티스토리 뷰
자바 1.8버전 부터는 default라는 키워드로 인터페이스에서 메소드의 구현이 가능하다.
이 때 궁금한 점은 원래 클래스는 다중 상속을 구현시 다이아몬드 패턴의 문제가 생겨 다중 상속 자체를 금지했는데, 인터페이스가 이를 허용하면 이 문제를 해결한건지 궁금하다.
일단 위의 코드처럼 default 키워드를 사용하면 함수 구현이 가능.
궁금했던 다이아몬드 패턴은 컴파일 에러로 막아뒀다.
default 말고도 하나 방법이 더 있다. static 키워드이다.
static으로 함수를 선언하면 인터페이스 내부에서 함수 구현이 가능하다.
하지만 이 경우 인터페이스 객체를 생성해도 사용이 불가능하고 전역 호출로만 사용이 가능하다.
'Dev Story > Java' 카테고리의 다른 글
자바 배열과 레퍼런스 변수 (0) | 2015.10.24 |
---|---|
try-catch-finally 순서 (0) | 2015.10.24 |
[JavaAPI] java.lang.Thread (0) | 2015.03.07 |
인터페이스에 변수를 넣을 수 있나? (0) | 2015.03.07 |
댓글