java协变函数

来源:互联网 发布:57是什么意思网络用语 编辑:程序博客网 时间:2024/06/06 01:26

Java 5.0添加了对协变返回类型的支持,即子类覆盖(即重写)基类方法时,返回的类型可以是基类方法返回类型的子类。

协变返回类型允许返回更为具体的类型

class Grain{    public String toString(){        return "Grain";    }}class Wheat extends Grain{    public String toString(){        return "Wheat";    }}class Mill{    Grain process(){        return new Grain();    }}class WheatMill extends Mill{    Wheat process(){        return new Wheat();    }}public class CovariantReturn {    public static void main(String [] args){        Mill m = new Mill();        Grain g = m.process();        System.out.println(m.process());                 m = new WheatMill();        System.out.println(m.process());     }}

输出 Grain

       Wheat

0 0
原创粉丝点击