추상 클래스
직접 객체를 생성할 수 없는 상속을 위해 정의된 개념적 클래스
abstract키워드를 통해 선언
추상 클래스를 활욜하면 잘못된 객체생성을 예방할 수 있음
※ 추상 클래스는 상속을 위해 필요할 뿐 독립 객체로 존재할 필요가 없다!!! (new 연산자로 호출 불가)※
abstract class Animal{
String name;
public void cry() {
}
}
class Tiger extends Animal{
@Override
public void cry() {
// TODO Auto-generated method stub
System.out.println(name + " 어흥!~!~!");
}
}
class Lion extends Animal{
@Override
public void cry() {
// TODO Auto-generated method stub
System.out.println("야옹~!~!~");
}
}
public class AnimalTest{
public static void main(String[] args) {
// 업캐스팅
Animal t = new Tiger();
t.name ="호랑이";
t.cry();
Animal l = new Lion();
l.name = "사자";
l.cry();
}
}
'JAVA > JAVA' 카테고리의 다른 글
[JAVA] 인터페이스 (0) | 2023.12.22 |
---|---|
[JAVA] this, super (2) | 2023.12.22 |
[JAVA] 상속 (1) | 2023.12.21 |
[JAVA] 접근 제한자 (0) | 2023.12.20 |
[JAVA] static (0) | 2023.12.20 |