스칼라의 익명 클래스에서 다른 클래스를 확장하는 방법이 있습니까? 나는 당신이 할 필요가스칼라 익명 클래스로 extends를 사용하는 방법
abstract class Salutation {
def saybye(): String = "Bye"
}
class anotherClass() {
def dummyFunction() = {
val hello = new {
def sayhello(): String = "hello"
} extends Salutation
val hi = hello.sayhello //hi value is "Hello"
val bye = hello.saybye //bye value is "bye"
}
}
처음에 그것을 지정하지 않았지만 예 예문은 추상적입니다 ... 인사말에는 sayHello, 하지만 내가 필요로하고 사용하고 싶은 다른 기능이 있습니다. "진짜"수업을 만들지 않고 다른 방법이 있습니까? – frank
예, 위의 코드가 작동하고 두 메서드를 모두 호출 할 수있는'Saltingation {def sayhello : String}'인스턴스가 생깁니다. –
흠 나는 이것을 다음과 같이 사용해야합니다 : "val hello : Salutation {def sayhello : String}"그렇다면 sayhello의 정의와 인스턴스화 방법을 정의하는 방법은 무엇입니까? – frank