-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
클래스와 인터페이스
계층정의
- 상위 클래스에 있는 메소드와 시그니처가 같은 메소드를 우연히 하위 클래스에서 선언하는 경우, 컴파일이 되지않기때문에
override변경자를 붙이거나, 이름을 변경해야한다. - 두 인터페이스 구현시 default가 있는 동일한 메서드가있다면, 하위클래스에서 명시적으로 새로운 구현을 제공해야한다.
class Button : Clickable, Focusable {
override fun showOff() {
super<Clickable>.showOff()
super<Focuable>.showOff()
}
}- Java에서 Kotlin interface default method 에 의존할 수 없다.
- 상속금지 : 상속을 위한 설계와 문서를 갖추거나, 그럴 수 없다면 금지하라.
- java에서는 메서드, 클래스 모두 final로 만들라.
- kotlin에서는 기본적으로 final이므로, 상속을 허용해주려면 클래스,메서드에
open변경자를 붙여야한다.- 이미 override한 메서드는 기본적으로 열려있다.
Reactions are currently unavailable