java泛型 自限定类型
如SelfBoundGeneric<T extends SelfBoundGeneric<T>>
第一次看可能会非常疑惑,但是我现在只知道我第一次看的时候确实非常疑惑,但是具体怎么疑惑却不知道了。
那么这个泛型类的意思就是:
他接受一个类型参数T,而 T是继承SelfBoundGeneric<T> 的 就这么简单
所以 要想传递正确的 类型参数 给T
那么只能要传递类型只能是 class ClassName extends SelfBoundGeneric<ClassName>{}的
只有这样 SelfBoundGeneric的泛型参数T才会被编译器接受
声明的时候用 SelfBoundGeneric<ClassName> = new ClassName(); 也是可以接受的!!!