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 중국어 웹사이트의 기타 관련 기사를 참조하세요!