编程语言
首页 > 编程语言> > Java协变、逆变、类型擦除

Java协变、逆变、类型擦除

作者:互联网

协变、逆变

定义

Java中String类型是继承自Object的,姑且记做String ≦ Object,表示String是Object的子类型,String的对象可以赋给Object的对象。而Object的数组类型Object[],理解成是由Object构造出来的一种新的类型,可以认为是一种构造类型,记f(Object),那么可以这么来描述协变和逆变:

当A ≦ B时,如果有f(A) ≦ f(B),那么f叫做协变(子类赋值给父类);
当A ≦ B时,如果有f(B) ≦ f(A),那么f叫做逆变(父类赋值给子类);
如果上面两种关系都不成立则叫做不可变。

数组协变

SADSAD

标签:Java,String,逆变,子类,Object,擦除,协变,类型
来源: https://www.cnblogs.com/xiaofengshan/p/15366621.html