Java 中的协变返回类型
javajava programming java 8
协变返回类型是指重写方法的返回类型。它允许缩小重写方法的返回类型,而无需强制转换类型或检查返回类型。协变返回类型仅适用于非原始返回类型。
从 Java 5 开始,我们可以通过更改方法的返回类型来重写方法,但必须遵守返回类型是重写方法返回类型的子类的条件。
以下示例展示了相同的内容。
示例
class SuperClass { SuperClass get() { System.out.println("SuperClass"); return this; } } public class Tester extends SuperClass { Tester get() { System.out.println("SubClass"); return this; } public static void main(String[] args) { SuperClass tester = new Tester(); tester.get(); } }
输出
Subclass