-
[Java] 추상클래스 abstractJava 2022. 5. 17. 17:33반응형
추상클래스란 구체적이지 않은 클래스를 의미한다.
독수리, 타조, 비둘기는 구체적인 새를 지칭하는데 새, 포유류 같은 것은 구체적이지 않다.
이러한 것을 구현한 클래스를 추상 클래스라고 한다.
추상클래스 정의하기
- 추상 클래스는 리턴타입 앞에 abstract 로 정의한다.
- 추상 클래스는 미완성의 추상 메소드를 포함할 수 있다.
(추상 메소드란 내용이 없는 메소드, 즉 구현되지 않은 메소드이다)
- 추상 클래스는 인스턴스를 생성할 수 없다.
public abstract class Bird { public abstract void sing(); public void fly(){ System.out.println("날다."); } }추상 클래스를 상속받는 클래스 생성하기
- 추상 클래스를 상속받은 클래스는 추상 클래스가 갖고있는 추상 메소드를 반드시 구현해야 한다.
- 추상 클래스를 상속받고, 추상 클래스가 갖고있는 메소드를 구현하지 않으면 해당 클래스도 추상 클래스가 된다.
public class Duck extends Bird{ @Override public void sing() { System.out.println("꽥꽥!!"); } }사용하기
- Bird는 추상 클래스 이므로 객체를 생성할 수 없다.
public class DuckExam { public static void main(String[] args) { Duck duck = new Duck(); duck.sing(); duck.fly(); //Bird b = new Bird(); } }반응형'Java' 카테고리의 다른 글
[Java] 내부 클래스 (0) 2022.05.18 [Java] 인터페이스 default 메소드 (0) 2022.05.18 [Java] 열거형(Enum) (0) 2022.05.17 [Java] List/Map/Set 차이 (0) 2021.10.18 [Java] Integer.valueOf() 와 Integer.parseInt()의 차이 (0) 2021.09.23