Java에서 : 최종 클래스와 추상 메소드가없는 추상 클래스의 차이점은 무엇입니까?


대답 1:

TLDR;

마지막 수업은 최종 수업입니다. 그것은 확장 될 수없고, 서브 클래스가 없으며, 행동이 최종적이고 수정 불가능하다는 것을 의미합니다.

반면에 추상 클래스는 상속되어야합니다. 하위 클래스의 공통 또는 일반 동작을 정의합니다. 하위 클래스는 "약간"다른 동작을 정의합니다. 그러나 추상 메소드가없는 추상 클래스는 이미 전체 동작을 정의하고 있음을 의미하므로 의미가 없습니다. abstract로 선언 된 메서드가 없으면 클래스 선언에서 abstract 키워드를 제거 할 수도 있습니다.


대답 2:

추상 클래스와 추상 메소드는 독립적 인 개념입니다. 추상 클래스에 추상 메소드가 없더라도 추상 클래스에 적용 가능한 규칙이 여전히 적용됩니다.

추상 클래스는 여전히 인스턴스화 할 수 없습니다. 본문과 구현을 사용하려면 클래스가 추상 클래스를 상속해야합니다. 반면에 Final Class는 인스턴스화되어야하며 더 확장 할 수 없습니다.


대답 3:

추상 클래스와 추상 메소드는 독립적 인 개념입니다. 추상 클래스에 추상 메소드가 없더라도 추상 클래스에 적용 가능한 규칙이 여전히 적용됩니다.

추상 클래스는 여전히 인스턴스화 할 수 없습니다. 본문과 구현을 사용하려면 클래스가 추상 클래스를 상속해야합니다. 반면에 Final Class는 인스턴스화되어야하며 더 확장 할 수 없습니다.


대답 4:

추상 클래스와 추상 메소드는 독립적 인 개념입니다. 추상 클래스에 추상 메소드가 없더라도 추상 클래스에 적용 가능한 규칙이 여전히 적용됩니다.

추상 클래스는 여전히 인스턴스화 할 수 없습니다. 본문과 구현을 사용하려면 클래스가 추상 클래스를 상속해야합니다. 반면에 Final Class는 인스턴스화되어야하며 더 확장 할 수 없습니다.