JAVA PECS法则
定义一个类A
然后我们再看数据流动。
如果一个数据是读取的话那么其含意就是A类去读取这个数据,那么就是协变
如果一个数据是写出的话那么其含意就是A类将该数据写出去其到地方,那么就是逆变。
因为执行读取的话,能够被A类安全接收的只有A类和A类的子类。
如果是写出的话,那么安全地接收A类的只有A类和A类的父类。
这里的安全是指不需要显式转换数据类型,而是可以隐式转换。
而隐式转换的前提就是子类转父类,而显示的则是父类转子类。
这就是PECS法则。
也是协变和逆变的思想。
是多态在集合泛型中应用的延伸。