ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 학원 DAY 13. 상속, SUPER
    기록 2022. 10. 2. 11:16

    클래스의 상속

    - 단일 상속만 허용한다.

    - 자신의 상위 클래스는 오직 하나만 허용된다.

    Iphone p = new Iphone();

    - p참조변수로 Iphone객체를 참조한다.

    - p참조변수로 Iphone객체의 공개된 속성과 기능을 사용한다.

    - p참조변수로 Iphone객체의 상위객체에 정의된 공개된 속성과 기능을 사용한다.

     

      1. p참조변수로 Iphone객체에서 속성이나 기능을 검색한다.

      2. Iphone객체에 속성이나 기능이 존재하지 않으면, Iphone객체의 super로 참조되는 SmartPhone 객체에서 검색한다.

          SmartPhone객체에서 속성이나 기능이 존재하지 않으면, SmartPhone객체의 super로 참조되는 Phone객체에서 검색한다.

         Phone객체에서 속성이나 기능이 존재하지 않으면, Phone객체의 super로 참조되는 Object객체에서 검색한다.

      3. Object에서도 검색되지 않으면 컴파일 오류가 발생한다.

      4. Iphone -> SmartPhone -> Phone -> Object 순서로 검색하다가 속성이나 기능이 검색되면 해당 속성이나 기능을 사용한다.


    < 생성자 메소드의 실행 >

    < 상속받았다 / 상속받지 못했다 >

    상속받았다는 말은 p.setNumber("010-1111-1111"); 이렇게 실행할 수 있다는 것이다.

    상속받지 못했기 때문에 p.number="010-1111-1111"; p.Phone();을 실행하지 못한다.

    부모 객체의 생성자는 상속받지 않기 때문에 super라는 메소드를 대신 사용한다. super()를 통해 자식객체에서 부모객체의 생성자 메소드를 호출하면서 인자값을 전달하면 부모 객체의 은닉화된 멤버 변수를 초기화할 수 있다. 

    * 사용할 수 없다 -> 상속받지 못했다.

    * 사용할 수 있다 -> 상속받았다.

    '기록' 카테고리의 다른 글

    학원 DAY 14. 강제클래스 형변환  (0) 2022.10.02
    학원 DAY 13. 클래스 형변환  (0) 2022.10.02
    학원 DAY12. 클래스와 클래스의 관계, 상속  (0) 2022.10.02
    학원 DAY12. 변수의 종류  (0) 2022.10.01
    학원 DAY12. STATIC  (0) 2022.10.01

    댓글

Designed by Tistory.