JavaFX에는 신기한 키워드가 있습니다.
바로 Mixin이라는 키워드 입니다.
mixin class MyNameMixin {
var firstName = “John”;
var lastName = “Doe”;
function printName() {
println(“My name is:{firstName} {lastName}”);
}
}
mixin class MyAddressMixin {
var address = “1 MainStreet, Anytown USA”;
function printAddress () {
println(“My address is : {address}”);
}
}
class MyContact extends MyNameMixin, MyAddressMixin{ }
def myContact = MyContact{};
myContact.printName();
myContact.printAddress();
MyContact는 MyAddressMixin과 MyNameMixin을 상속받고 있습니다.
이런게 다중상속이라 하나요.
물론 인터페이스 구현으로 해서 하나의 클래스에서 두개의 인터페이스를 재정의 해서 사용은 할 수 있습니다.
하지만, 위와 같이 부모 객체를 두개나 상속받는 경우는 JavaFX만 가능한 것으로(…) 알고 있습니다.
아직 저도 클래스를 확실히 모르기 때문에 ^-^;;
참고로 Mixin을 빼면 에러가 난답니다 🙂