>Java >java지도 시간 >인터페이스가 Java의 'Object' 클래스에서 메서드를 호출할 수 있나요?

인터페이스가 Java의 'Object' 클래스에서 메서드를 호출할 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-27 16:02:02624검색

Can Interfaces Call Methods from the `Object` Class in Java?

인터페이스는 Java의 객체 클래스에서 상속됩니까?

Java에서 인터페이스는 구현할 클래스에 대한 계약을 정의하는 선언된 엔터티입니다. 클래스와 달리 인터페이스는 Object 클래스에서 직접 상속되지 않습니다.

그러나 Object에서 명시적으로 상속되지 않더라도 인터페이스는 Object 클래스에 정의된 메서드를 계속 호출할 수 있습니다. 이는 인터페이스가 Object 클래스의 각 공용 메소드에 대해 공용 추상 메소드를 암시적으로 선언하기 때문입니다.

예를 들어 다음 코드를 고려하십시오.

<code class="java">public class Test {
    public static void main(String[] args) {
        Employee e = null;
        e.equals(null);
    }
}

interface Employee {
}</code>

이 코드에서 Employee는 인터페이스이고 Object에서 명시적으로 상속하지 않는 경우 Java 컴파일러는 인터페이스가 암시적으로 equals 메소드를 선언하여 Employee 인스턴스에서 호출될 수 있음을 인식합니다.

이 동작은 Java 언어 사양, 섹션 9.2에 지정되어 있습니다. , 이는 직접적인 슈퍼인터페이스가 없는 인터페이스가 Object에 선언된 각 공용 인스턴스 메서드에 대해 공용 추상 멤버 메서드를 암시적으로 선언함을 나타냅니다. 이렇게 하면 인터페이스가 명시적으로 상속받지 않고도 Object 클래스 및 해당 메서드와 상호 작용할 수 있습니다.

위 내용은 인터페이스가 Java의 'Object' 클래스에서 메서드를 호출할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.