// 부모 클래스 == 상위 클래스 == 슈퍼(super) 클래스 == 물려주는 클래스 == 상속하는 클래스
class SuperTest111
{
protected double area; // protected가 나오면 상속을 위해 만들어졌구나~ 생각
// 생성자
SuperTest111()
{
System.out.println("Super Class...");
}
void write(String title)
{
System.out.println(title + " - " + area);
}
}
// 자식 클래스 == 하위 클래스 == 서브(sub) 클래스 == 물려받는 클래스 == 상속받는 클래스
public class Test111 extends SuperTest111
{
/*
protected double area;
// check~!!!
// ※ 생성자는 상속 대상에서 제외된다.
void write(String title)
{
System.out.println(title + " - " + area);
}
*/
// 컴파일 과정에서 자동으로 삽입되는 default 생성자
/*
Test111()
{
// ※ 생성자 내부에서 또 다른 생성자 호출
// → 가능하다. 단, 생성자 내부에서 가장 먼저 실행되어야 한다.
// 텅 비어있다~!!!
// ↓ (사실 텅 비어있는게 아님!)
// 부모 클래스 생성자 호출구문~!!!
super(); -- this. 처럼 사용하는 것으로 생각
}
*/
// 사용자 정의 생성자
Test111()
{
//super(); //-- 컴파일 하는 과정에서 자동으로 삽입~!!!
// => superTest111()
System.out.println("Sub class...")
// super(); //-- (Ⅹ) 뒤에 붙으면 오류난다! 왜? 생성자에서 또 다른 생성자 호출하려면 가장 먼저 해야지 오류가 나지 않는다.
}
public void actionCircle()
{
int r = 10;
area = r * r * 3.141592;
write("원");
}
public void actionRect()
{
int w=20, h=5;
area = w * h;
write("사각형");
}
public static void main(String[] args)
{
// Test111 클래스(자식) 기반 인스턴스 생성
Test111 ob = new Test111();
//--==>> Super Class...
// Sub Class...
ob.actionCircle()
//--==>> 원 - 3.141592
ob.actionRect();
//--==>> 사각형 - 100.0
}
}
// 부모 클래스 == 상위 클래스 == 슈퍼(super) 클래스 == 물려주는 클래스 == 상속하는 클래스 class SuperTest111 { protected double area; // protected가 나오면 상속을 위해 만들어졌구나~ 생각 // 생성자 SuperTest111() { System.out.println("Super Class..."); } void write(String title) { System.out.println(title + " - " + area); } } // 자식 클래스 == 하위 클래스 == 서브(sub) 클래스 == 물려받는 클래스 == 상속받는 클래스 public class Test111 extends SuperTest111 { /* protected double area; // check~!!! // ※ 생성자는 상속 대상에서 제외된다. void write(String title) { System.out.println(title + " - " + area); } */ // 컴파일 과정에서 자동으로 삽입되는 default 생성자 /* Test111() { // ※ 생성자 내부에서 또 다른 생성자 호출 // → 가능하다. 단, 생성자 내부에서 가장 먼저 실행되어야 한다. // 텅 비어있다~!!! // ↓ (사실 텅 비어있는게 아님!) // 부모 클래스 생성자 호출구문~!!! super(); -- this. 처럼 사용하는 것으로 생각 } */ // 사용자 정의 생성자 Test111() { //super(); //-- 컴파일 하는 과정에서 자동으로 삽입~!!! // => superTest111() System.out.println("Sub class...") // super(); //-- (Ⅹ) 뒤에 붙으면 오류난다! 왜? 생성자에서 또 다른 생성자 호출하려면 가장 먼저 해야지 오류가 나지 않는다. } public void actionCircle() { int r = 10; area = r * r * 3.141592; write("원"); } public void actionRect() { int w=20, h=5; area = w * h; write("사각형"); } public static void main(String[] args) { // Test111 클래스(자식) 기반 인스턴스 생성 Test111 ob = new Test111(); //--==>> Super Class... // Sub Class... ob.actionCircle() //--==>> 원 - 3.141592 ob.actionRect(); //--==>> 사각형 - 100.0 } }