반응형
SMALL
- 하나의 코드가 여러가지 자료형으로 구현되어 실행되는 것
- 정보은닉, 상속과 더불어 객체지향 프로그래밍의 가장 큰 특징 중 하나
- 객체지향 프로그래밍의 유연성, 재활용성, 유지보수성에 기본이 되는 특징
class Animal {
public void move() {
System.out.println("동물이 움직입니다.");
}
}
class Human extends Animal {
public void move() {
System.out.println("사람이 두발로 걷습니다.");
}
}
class Tiger extends Animal {
public void move() {
System.out.println("호랑이가 네발로 뜁니다.");
}
}
class Eagle extends Animal {
public void move() {
System.out.println("독수리가 하늘을 납니다.");
}
}
public class AnimalTest {
public static void main(String [] args) {
AnimalTest test = new AnimalTest();
test.moveAnimal(new Human());
test.moveAnimal(new Tiger());
test.moveAnimal(new Eagle());
}
public void moveAnimal(Animal animal) {
animal.move();
}
}
animal.move() 라는 코드 한 줄인데, 결과는 다양하다 => 다형성
cf. do it 자바 인프런 강의
반응형
LIST
'JAVA' 카테고리의 다른 글
[JAVA] 템플릿 메서드 (0) | 2022.03.31 |
---|---|
[JAVA] 다운캐스팅 (0) | 2022.03.27 |
[JAVA] 가상 메서드 (0) | 2022.03.24 |
[JAVA] 상위 클래스로 묵시적 형변환 (업캐스팅) (0) | 2022.03.24 |
[JAVA] 접근 제한자 (0) | 2022.03.24 |
댓글