암시 적 클래스는 항상 AnyVal을 확장해야합니까? 확장 메서드를 작성하고 있다고 가정 해 보겠습니다. implicit class EnhancedFoo(foo: Foo) { def bar() { /* ... */ } } 항상 extends AnyVal클래스 정의에 포함해야합니까 ? 어떤 상황에서 암시 적 클래스를 값 클래스로 만들고 싶지 않습니까? 값 클래스에 대해 나열된 제한 사항을 살펴보고 암시 적 클래스에 적합하지 않은 경우를 생각해 보겠습니다 . "유형이 값 클래스가 아닌 공개, val 매개 변수가 정확히 하나 인 기본 생성자 만 있어야합니다." 따라서 래핑하는 클래스 자체가 값 클래스 인 경우를 implicit class래퍼로 사용할 수 없지만 다음과 같이 할 수 있습니다. // wrapped..