# 다형성
다형성이란 같은 자료형에 여러 가지 객체를 대입하여 다양한 결과를 얻어내는 성질을 의미합니다.
하나의 타입으로 다양한 실행 결과를 얻을 수 있으며 객체를 부품화하여 유지 보수를 용이하게 합니다.
상속관계 참조 형식이다.
1. 부모의 메소드와 필드만 사용가능하다.
2. 자식에게 추가된 기능은 사용xx 단, 오버라이드를 하게 되면 자식 메서드를 호출하여 사용할 수 있다.
3. 다형성 예시(1)
● Monitor 자식 클래스 pro_mo1 부모 클래스 모든 기능을 가지고 태어난 객체 / 자식 객체에 있는 내용은 사용하지 못한다
● 부모 안에서 자식이 만들어지기 때문에 반대로는 표현할 수 없다.
# instanceOf 연산자
● 특징
* 객체 비교할 때 많이 쓰인다.
* 참조 변수가 참조하고 있는 인스턴스의 실제 타입을 알아보기 위한 연산자입니다.
* instanceOf 왼쪽에는 참조 변수를 오른쪽에는 타입(클래스명)이 피연산자로 위치합니다.
* 연산의 결과는 boolean 값이 true, false 중의 하나를 변환합니다.
* instanceOf를 이용한 연산 결과로 true를 얻게 되면 참조 변수가 검사한 타입으로 형변환이 가능하다는 것을 뜻합니다.
* 조상 타입의 참조 변수로 자손 타입의 인스턴스를 참조할 수 있기 때문에, 참조 변수의 타입과 인스턴스의 타입이 항상 일치하지는 않습니다.
예시 1)
예시 2)
다형성과 instanseOf 연산자 사용
Fruit 상속받은 세가지 과일
Main class
Main class 결과 확인
'🎨 Programming > JAVA' 카테고리의 다른 글
[JAVA] 18. 인터페이스(interface) (0) | 2020.06.29 |
---|---|
[JAVA] 17. 추상클래스(abstract) (0) | 2020.06.29 |
[JAVA] 15. 패키지(package) & 접근제어자 (0) | 2020.06.28 |
[JAVA] 14. 상속 (0) | 2020.06.21 |
[JAVA] 13. 객체 지향 프로그래밍(Object Oriented Programming) / 은닉화 (0) | 2020.06.19 |