Java
추상 클래스 (Abstract Class)
예요
2024. 7. 1. 19:36
추상 클래스 (Abstract Class)
- 추상 메소드를 포함하며 상속받는 자식 클래스에서 추상 메소드를 오버라이딩하여 완성하도록 유도하는 클래스이다.
- abstract 예약어를 사용한다.
- 인스턴스화가 불가능하다.
- 추상 클래스를 상속받는 자식 클래스에서는 추상 메소드를 모두 구현해야한다.
- 다중 상속이 불가능하다.
public abstract class Car {
public String name;
public int speed;
Car(String name, int speed) {
this.name = name;
this.speed = speed;
}
public abstract void drive();
public abstract void stop();
}
public class Jeep extends Car {
public boolean isMine;
Jeep(String name, int speed, boolean isMine) {
super(name, speed);
this.isMine = isMine;
}
@Override
public void drive() {
System.out.println(name + " drive");
}
@Override
public void stop() {
System.out.println("Jeep speed : " + speed + " and stop");
}
public void isMine() {
System.out.println(name + " is " + (isMine ? "mine" : "not mine"));
}
}
public class AbstractEx {
public static void main(String[] args) {
Car jeep = new Jeep("Jeep", 50, true);
jeep.drive();
jeep.stop();
Jeep yourJeep = new Jeep("Your Jeep", 100, false);
yourJeep.drive();
yourJeep.stop();
yourJeep.isMine();
}
}
▷ 출처
728x90