欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java协变返回类型使用示例

程序员文章站 2024-02-20 21:20:04
java 5.0添加了对协变返回类型的支持,即子类覆盖(即重写)基类方法时,返回的类型可以是基类方法返回类型的子类。协变返回类型允许返回更为具体的类型。示例程序如下: 复...

java 5.0添加了对协变返回类型的支持,即子类覆盖(即重写)基类方法时,返回的类型可以是基类方法返回类型的子类。协变返回类型允许返回更为具体的类型。
示例程序如下:

复制代码 代码如下:

import java.io.bytearrayinputstream;
import java.io.inputstream;

class base
{
    //子类derive将重写此方法,将返回类型设置为inputstream的子类
   public inputstream getinput()
   {
      return system.in;
   }
}
public  class derive extends base
{

    @override
    public bytearrayinputstream getinput()
    {

        return new bytearrayinputstream(new byte[1024]);
    }
    public static void main(string[] args)
    {
        derive d=new derive();
        system.out.println(d.getinput().getclass());
    }
}
/*程序输出:
class java.io.bytearrayinputstream
*/