Edd*_*ion 3 java generics scala traits type-parameter
在Scala中你可以做这样的事情:
trait A[T]
trait B[C[_] <: A[_]] {
def apply[T](entity: C[T]): T
}
Run Code Online (Sandbox Code Playgroud)
Java模拟看起来像这样:
interface A<T>
interface B<C<?> extends A> {
<T> T apply(entity: C<T>): T
}
Run Code Online (Sandbox Code Playgroud)
您可以将B与任何扩展A的类型一起使用,并使用此子类型的类型参数作为方法的输出类型.
但它不编译,你会用Java做什么?
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |