티스토리 뷰

Tip and Error/JAVA

상속 & super()

geonwoopaeng@gmail.com 2021. 4. 8. 17:08

상속 & super()


하위 클래스를 생성할 경우

항상 상위 클래스의 instance가 생성되고 하위 클래스의 instance가 생성된다.


캡처


//gpaeng은 고릴라 클래스의 instance => 고릴라를 사용한다고 생각
포유류 gpaeng = new 고릴라(); 
// gpaeng의 변수 type은 포유류
// gpaeng의 instance type은 고릴라
public class 포유류 {
    int age; //인스턴스 변수
    static int height; //클래스 변수

    void method(){
        int i; // 지역 변수
    }
}

super()


  • 상위 클래스의 기본 생성자 호출
  • 상위 클래스의 접근을 위한 수단

//Customer.java
public Customer(int ID, String Name) {
        this.ID = ID;
        this.Name = Name;

        Grade = "SILVER";
        bonusRatio = 0.01;
}
//VIP.java
// super를 이용하여 상위 클래스의 생성자 명시적으로 호출
public VIP(int ID, String Name) {
        super(ID, Name);

        Grade = "VIP";
        bonusRatio = 0.05;
        salesRatio = 0.1;

}
//Test.java
public class Test {

    public static void main(String[] args) {

        Customer c1 = new Customer(10010, "GPAENG");
        c1.bonusPoint = 1000;

        VIP c2 = new VIP(10020, "gpaeng");
        c2.bonusPoint = 10000;
    }
}

반응형

'Tip and Error > JAVA' 카테고리의 다른 글

instance 형 확인 (instanceof)  (0) 2021.04.12
Override  (0) 2021.04.08
Singleton Pattern(싱글톤 패턴)  (0) 2021.04.07
변수와 메모리 관계  (0) 2021.04.07
get() / set()  (0) 2021.04.06
공지사항
최근에 올라온 글