Interface
Concept
Interface는 특정 기능을 추상화하고 인터페이스 수정을 사용하는 컬렉션입니다. (추천 학습: java 강좌)
public interface InfClass { public void say(); }
Abstract class
Concept
간단히 말하면 추상 메소드는 메소드 본체만 있고 구현이 없는 클래스입니다. 추상으로 장식되어 있습니다.
abstract class AbsClass { abstract void say(); }
Java는 추상 클래스 및 인터페이스 생성을 제공하고 지원합니다. 구현에는 공통점이 있지만 차이점은 다음과 같습니다.
인터페이스의 모든 메서드는 암시적으로 추상입니다. 추상 클래스에는 추상 메서드와 비추상 메서드가 모두 포함될 수 있습니다.
클래스는 여러 인터페이스를 구현할 수 있지만 하나의 추상 클래스만 상속할 수 있습니다.
클래스는 추상 클래스와 인터페이스에서 선언한 모든 메서드를 구현할 필요는 없습니다. 또한 abstract로 선언해야 합니다.
추상 클래스는 인터페이스 메서드 구현을 제공하지 않고도 인터페이스를 구현할 수 있습니다.
Java 인터페이스에 선언된 변수는 기본적으로 최종 변수입니다. 추상 클래스에는 최종 변수가 아닌 변수가 포함될 수 있습니다.
Java 인터페이스의 멤버 함수는 기본적으로 공개됩니다. 추상 클래스의 멤버 함수는 비공개, 보호 또는 공개일 수 있습니다.
인터페이스는 완전히 추상적이므로 인스턴스화할 수 없으며 추상 클래스도 인스턴스화할 수 없습니다.
클래스가 인터페이스를 구현하는 경우 인터페이스의 모든 메서드를 구현해야 하지만 추상 클래스가 반드시 구현되는 것은 아닙니다.
위 내용은 Java 인터페이스와 추상 클래스의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!