Java에서 추상 정적 메서드 제외 이해
Java에서 추상 메서드는 일반적으로 구현할 하위 클래스에 대한 계약을 정의합니다. 그러나 "추상"이라는 개념은 "정적" 메서드의 특성과 모순됩니다.
정적 메서드는 특정 객체가 아닌 클래스 자체에 바인딩되며 클래스 인스턴스가 필요 없이 실행됩니다. . 이 고유 기능은 구현 부족을 의미하는 추상 원칙과 충돌합니다.
다음 예를 고려하세요.
abstract class foo { abstract void bar( ); // Legal abstract static void bar2(); // Illegal }
이 예에서 bar() 메서드는 추상적이며 이는 다음을 나타냅니다. 하위 클래스에서 구현되어야 합니다. 그러나 bar2() 메서드는 abstract 및 static으로 표시됩니다. 이 조합은 다음과 같은 이유로 허용되지 않습니다.
추상 메서드는 코드를 가질 수 없으므로 정적 메서드가 내포하는 기능과 모순됩니다. 이러한 논리적 충돌로 인해 Java에서 추상 정적 메소드를 선언할 수 없습니다.
위 내용은 Java에서 추상 정적 메서드가 불법인 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!