2013. 10. 20. 03:26
부모클래스 Animal에 자식클래스 Dog, Cat, Duck이 있다.
자식클래스들은 각각 부모클래스의 Speek()함수를 재정의 하고고 있다.
재정의 한 내용은 다음과 같다고 가정하자.
Dog
public void Speek(){ System.out.println("멍멍 "); } |
Cat
public void Speek(){ System.out.println("야옹 "); } |
Duck
public void Speek(){ System.out.println("꽥꽥 "); } |
Dog, Cat, Duck은 Animal의 자식클래스 이므로 다음과 같은 객체생성이 가능하다.
Animal dog = new Dog();
Animal cat = new Cat();
Animal duck = new Duck();
그리고 다음과 같이 함수를 호출해보자.
dog.speek();
cat.speek();
duck.speek();
각각의 자식클래스는 재정의한 speek함수의 동작을 수행하게 된다.
실행결과
멍멍 야옹 꽥꽥 |
이처럼 다형성을 활용하면 서로 다른 서브클래스의 객체가 동일한 함수호출로 다른 응답을 하도록 구성할 수 있다.
'언어(Language) > JAVA' 카테고리의 다른 글
Java 한글 <-> 유니코드 변환 (0) | 2013.12.19 |
---|---|
Text File Read Write (0) | 2013.12.18 |
IS-A 관계와 HAS-A 관계 (0) | 2013.10.20 |
캡슐화 (0) | 2013.10.20 |
상속 (0) | 2013.10.20 |