자바의정석

[자바의 정석 - 기초편] 7-40,41 디폴트 메서드와 static메서드에 대한 강의입니다. 객체지향개념의 마지막 강의

유호야 2022. 3. 23. 16:51
반응형

ch7-40 디폴트 메서드와 static 메서드

- 인터페이스에 디폴드 메서드, static 메서드 추가 가능 (jdk 1.8부터)

자바는 c++보다 배우기 쉽다. 
인터페이스에서는 추상메서드만 가질 수 있었는데, 기존 원칙을 깨고, default 메서드와 static 메서드를 추가할 수 있게 되었다. (상수는 기본)

- 인터페이스에 새로운 메서드(추상 메서드)를 추가하기 어려움.

해결책 : 디폴트 메서드 (default method)

- 디폴트 메서드는 인스턴스 메서드( 인터페이스 원칙 위반 ) 

몸통이 있는 메서드를 추가할 수 있게 해주는 것 
default void newMethod() {}

- 디폴트 메서드가 기존의 메서드와 충돌할 때의 해결책

규칙 잘 모르겠으면, 모르는 대로 직접 오버라이딩 하면 해결 된다. 

충돌 시 오버라이딩

 

반응형