java协变返回类型 java协变返回类型使用示例
人气:0想了解java协变返回类型使用示例的相关内容吗,在本文为您仔细讲解java协变返回类型的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java,返回类型,下面大家一起来学习吧。
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
*/
加载全部内容