Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java의 공변 반환 유형

<시간/>

공변 반환 형식은 재정의 메서드의 반환 형식을 나타냅니다. 유형을 캐스팅하거나 반환 유형을 확인할 필요 없이 재정의된 메서드의 반환 유형을 좁힐 수 있습니다. 공변 반환 유형은 기본이 아닌 반환 유형에만 작동합니다.

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