2011-08-10 4 views
4

나는 지금 추상 클래스를 가진 두 개의 추상 발스스칼라에서 형질로 추상적 인 값을 초기화하는 방법은 무엇입니까?

trait Base { 
    val startDate: java.util.Date 
    val endDate: java.util.Date 
} 

다음과 같은 특성이 특성

abstract class MyAbstract extends Base ... 
을 확장 있다고 가정 지금 혼합 몇 가지 다른 특성을 가진 추상 클래스를 인스턴스화 할

def main(args: Array[String]) { 
    new MyAbstract with MixIn1 with MixIn2 
    } 

startDate 및 endDate에 구체적인 값을 전달하는 방법은 무엇입니까?

답변

10

MyAbstract은 추상 클래스이기 때문에 직접 인스턴스화 할 수 없습니다. 명시 적으로 서브 클래스를 만들거나 익명 서브 클래스의 인스턴스를 생성해야합니다 (예 :

def main(args: Array[String]) { 
    val myInstance = new MyAbstract with MixIn1 with MixIn2 { 
    val startDate = ... 
    val endDate = ... 
    } 
} 
관련 문제