kotlin协变和逆变

泛型我们一般都知道,然后泛型有个上下边界,我们一般吧称为上边界,称为下边界,这个过程其实就称为协变和逆变的过程。

我们再详细点解释下:

 List list = new ArrayList();
 
 

上面这个例子,我们写出来肯定会报错,因为这个相当于父类继承子类了,所以是错误的写法,我们应该用Java提供的通配符适配,如下:

List list = new ArrayList();//协变 A>B 生产者

这样写就没问题了,因为String确实是Object的子类。

你可能感兴趣的:(kotlin协变和逆变)