● 상속

 - 자손클래스의 객체화시 부모클래스의 객체를 먼저 생성한다.

 

● 다형성

 - 바인딩 : 부모클래스와 자손클래스가 동일한 멤버를 소유 하는 경우에 참조변수와 객체의 관계

   멤버변수 - 참조변수의 자료형 / 멤버메서드 - 오버라이딩된 메서드 ex) 참조변수가 부모 타입 or 어느 타입이여도 오버라이딩된 메서드 실행

 

● 추상클래스

 - 추상클래스의 상속 : 추상클래스 간의 상속 가능, 추상클래스 간의 상속시 상속 받은 추상클래스를 꼭 정의할 필요 X,     추상클래스를 상속받은 추상클래스를 일반클래스에서 구현할 때 상속받은 모든 추상클래스를 구현해야 함.

 - 추상메서드가 하위메서드에서 구현되면 상위(추상)클래스에서 사용가능. (∵ 오버라이딩 된 메서드는 타입에 상관없이 실행됨)

 

● final 제어자

 - 클래스 : 상속 X / 메서드 : 오버라이딩 X / 변수 : 수정 X (단, 명시적 초기화를 하지 않은 경우 생성자에서 한번 가능)

 

● 인터페이스(접근제어자 : public)

 - 인터페이스간의 다중상속 가능(extends 사용)    ex) interface in3 extends in1, in2

 - 기본값 - 추상메서드 : public abstract / 상수 : public static final

    (즉, 인터페이스를 하위클래스에 구현할 때 접근제어자는 public만 가능함)

 - JDK 1.8부터 추상메서드와 상수뿐만 아니라 static메서드와 default메서드 추가 가능.

   (default메서드의 경우 default를 꼭 명시해줘야함 (∵ 기본값은 public abstract))

 

● 내부 클래스

 - 특징 : 자료형으로 사용됨, 객체화 가능, Object의 하위 클래스임.

           멤버(변수, 메서드, 생성자) 소유가능.

           외부 클래스의 멤버임 => 외부클래스의 private 접근 가능.

 인스턴스 내부클래스 - 인스턴스, 상수 O / 스태틱 정의 X           [상수 : final static => static이지만 예외로 사용가능]

 스태틱 내부클래스 - 인스턴스, 상수, 스태틱 정의 O

 지역 내부클래스 - 인스턴스, 상수 O / 스태틱 정의 X

                         지역 내부클래스 안의 메서드의 지역변수는 상수(final)여야함. => 메서드 안에서 값 변경X

                         값을 변경하고 싶으면 외부클래스의 멤버변수로 작성.

 익명 내부클래스 - 클래스없이 객체화 가능, 추상클래스&인터페이스 객체화 가능.

                             

 

8장-상속.pdf
0.62MB
9장-인터페이스.pdf
0.27MB
10장-내부클래스.pdf
0.29MB

'자료 > 자바의 정석' 카테고리의 다른 글

CH9 기본API(1)  (0) 2020.05.25
CH8 예외처리  (0) 2020.05.22
CH6 객체지향 프로그래밍(1)  (0) 2020.05.13
정렬(Sort)  (0) 2020.05.08
Ch5 배열  (0) 2020.05.08

+ Recent posts