Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Covariant return types trong Java


Covariant return type (kiểu trả về cùng biến thiên) liên quan đến kiểu trả về của overriding method. Nó cho phép thu hẹp kiểu trả về của overridden method mà không cần cast hoặc kiểm tra kiểu trả về. Covariant return type chỉ hoạt động cho non-primitive return types.

Từ Java 5 trở đi, chúng ta có thể override method bằng cách chỉ thay đổi kiểu trả về với điều kiện kiểu trả về là subclass của kiểu trả về của overridden method.

Ví dụ sau minh họa:

Ví dụ

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();
    }
}

Kết quả

SubClass