주요 차이점 : 클래스의 두 가지 주요 유형이 있습니다 : 추상 클래스와 구체적인 클래스. 이 둘의 주요 차이점은 메소드 기능의 구현 수준에서 비롯됩니다. 구체적 클래스는 모든 클래스가 완벽하게 구현되는 정규 클래스입니다. 추상 클래스는 그 이름에서 알 수있는 것과 정확히 일치합니다. 함수가 정의되지 않은 곳, 즉 추상적입니다.
![](http://spot-the-difference.info/img/difference-between/774/difference-between-abstract-class.jpg)
클래스의 두 가지 주요 유형이 있습니다 : 추상 클래스와 구체적인 클래스. 이 둘의 주요 차이점은 메소드 기능의 구현 수준에서 비롯됩니다. 구체적 클래스는 모든 클래스가 완벽하게 구현되는 정규 클래스입니다. 추상 클래스는 그 이름에서 알 수있는 것과 정확히 일치합니다. 함수가 정의되지 않은 곳, 즉 추상적입니다. 기본 클래스입니다. 추상 클래스가 정의되면 추상 클래스가 아닌 구체적인 클래스가됩니다. 구체적인 클래스는 멤버 함수의 구현이 제공되는 곳입니다. 구체적 클래스는 기본 클래스, 즉 추상 클래스에서 파생됩니다.
![](http://spot-the-difference.info/img/difference-between/774/difference-between-abstract-class-2.jpg)
그것에 대해 생각하는 쉬운 방법은 예제를 고려하는 것입니다. 스포츠를 생각해보십시오, 그것은 대상이지만, 정의되지 않은 대상은 아닙니다. 기술적으로 스포츠 같은 것은 없습니다. 그것은 단지 다른 객체의 카테고리 화로서 존재합니다. 축구, 야구, 농구, 하키 등과 같은 이러한 객체는 스포츠로 분류되고 구현 될 수있는 정의 된 객체입니다. 축구는 야구, 야구, 농구, 하키가 구체적인 수업 인 반면, 스포츠는 추상 클래스입니다.
추상 클래스와 콘크리트 클래스의 비교 :
추상 클래스 | 콘크리트 교실 | |
유형 | 기본 클래스 | 기본 클래스 |
행동 양식 | 부분적으로 구현 된 메서드가 포함될 수 있습니다. | 모든 메소드가 완벽하게 구현됩니다. |
기능들 | 일부 또는 모든 선언 된 함수는 완전히 가상의 함수입니다. | 순전히 가상 함수가 없습니다. |
인스턴스화 | 인스턴스화 할 수 없습니다. | 인스턴스화 가능 |
이미지 예의 : tutorials.jenkov.com, stackoverflow.com