4
는 내가 자주 동반자 객체 (예를 들어, 재생 프레임 워크) 호출자이 조금 덜 장황하게 볼스칼라 일반적인 기능
abstract class Foo {
def foo(a: Int): Int
...
}
// Usage
new Foo {
def foo(a: Int) = {
println("Foo")
a
}
}
추상 클래스를 가지고있다.
object Foo {
def apply(f: Int => Int) = new Foo {
def foo(a: Int) = f(a)
}
}
// Usage
Foo { a =>
println("Foo")
a
}
그러나, 즉 내가 일반적인 방법은
abstract class Foo {
def foo(a: T): T
...
}
// Usage
new Foo {
def foo(a: T) = {
println("Foo")
a
}
}
난 아직도 동반자 객체를 사용할 수 있도록 가정 차라리 메소드 나 클래스보다, 함수에 제네릭 형식 매개 변수를 적용 할 수 있는가?
@PaulDraper - 그래서 'Foo.foo'가 제너릭이되기를 원하십니까? – Lee
@PaulDraper - 확인. 업데이트를 참조하십시오. – Lee