协办返回类型:
导出类中覆盖基类的方法,可以返回基类方法中返回类型的某一个导出类。
package com.zx.test08;class Grain{@Overridepublic String toString() {return "Grain";}}class Wheat extends Grain{@Overridepublic String toString() {return "Wheat";}}class Mill{Grain procss(){return new Grain();}}class WhertMill extends Mill{@OverrideWheat procss() {return new Wheat();}}public class CovariantReturn {public static void main(String[] args) {Mill mill = new Mill();Grain grain = mill.procss();System.out.println(grain);mill=new WhertMill();grain=mill.procss();System.out.println(grain);}}
示例详解:
Mill中的procss()返回的是Grain类,因为 Wheat类是Grain的导出类。所以在Mill的导出类 WhertMill中被覆盖的 procss可以返回Wheat的类型
