JAVA
[JAVA] 추상클래스
혼자공부중
2022. 2. 28. 13:03
추상클래스
미완성된 클래스
추상클래스 특징
- 추상메소드가 존재하는 순간 반드시 추상클래스로 정의된다
- 단, 추상메소드가 없어도 클래스명 앞에 abstract를 붙이면 추상클래스로 만들 수 있다
- 객체 생성이 불가능하다(단, 참조형 변수로써 자식 객체를 담을 때는 사용 가능하다)⇒다형성 적용
추상클래스가 필요한 때
- 자식 클래스들에게 일정한 규칙을 부여하고 싶을 때 쓰면 좋다
- 클래스가 아직 구체적이지 않고 구현이 완벽한 상태가 아닐 때(개념적으로)
- 현재 이 클래스에 대한 객체 생성을 애초에 막고싶을 때(기술적으로)
추상메소드
미완성된 메소드로 몸통부 { }가 구현되어있지 않은 메소드
추상메소드 특징
- 자식클래스에서 오버라이딩을 통해 완성되는 메소드(강제로 오버라이딩을 해야한다)
- 오버라이딩을 안했을 경우 에러 발생
- 메소드 사용의 통일성, 강제성을 확보시켜준다
- 표준화된 틀을 제공할 목적으로도 쓰인다