내가 사용하는 경우 취소 밀봉 trait
또는 abstract class
스칼라 후 사용 패턴 매칭을 궁금해 사용할 수 있습니다이 특성 / 클래스의 수 어떻게 구현이 특정 patternmatch에 대한 컴파일시에 컴파일러 알고하지 않는 이유는 무엇입니까? 따라서 그렇다면 가능한 모든 종속성 / 가져 오기를 확인하여 사용할 수 있는 유형을 알고 있기 때문에 trait
/ abstract class
가 봉인되어 있지 않아도 패턴 일치 경고를 표시 할 수 없습니까?
예를 들어 Option[A]
및에 대해서만 패턴 일치를하고 패턴이 일치 Some[A]
하지 않으면 None
컴파일러 Option
가 봉인 되기 때문에 불평 합니다.
컴파일러가 그것을 알 수 없거나 해결할 수 없다면 왜 할 수 없습니까? 컴파일러가 이론적으로 그렇게 할 수 있다면 스칼라에서 사용되지 않는 이유는 무엇입니까? 이런 종류의 행동을 지원하는 다른 언어가 있습니까?
Foo
서브 클래스 A
, B
및을 사용 하여 추상 클래스 를 생성하면 C
모든 패턴 일치가 해당 세 개만 일치합니다. D
패턴 일치를 날려 버릴 새로운 서브 클래스 를 추가하는 것을 막을 수 있는 것은 없습니다 .
java.lang.ClassLoader
.