[Java] 다형성, 명시적 형 변환 (다운캐스팅)
2020. 6. 23. 23:19ㆍLanguage/Java
1. 다형성
하나의 코드가 여러 자료형으로 구현되어 실행되는 것이다. 같은 코드에서 여러 실행 결과가 나온다. 정보은닉, 상속과 더불어 객체지향 프로그래밍의 가장 큰 특징 중 하나이며 유연성, 재활용성, 유지보수성에 기본이 되는 특징이다.
※ 다형성의 장점으로는 유사한 클래스가 추가되는 경우 유지보수에 용이하며, 각 자료형 마다 다른 메서드를 호출하지 않으므로 코드에서 많은 if문이 사라진다.
2. 명시적 형 변환
묵시적으로 상위 클래스 형 변환된 인스턴스가 원래 자료형(하위 클래스)로 변환되는 과정이다. 하위 클래스로의 형 변호나은 명시적으로 되어야 한다.
3. instanceof 키워드
인스턴스 클래스와 다운캐스팅할 클래스가 다를 경우 다형성 오류가 발생한다. 자주 발생하는 오류를 instanceof 키워드를 이용하여 안정성을 위해 예외처리한다.
728x90
'Language > Java' 카테고리의 다른 글
[Java] 인터페이스 (0) | 2020.06.24 |
---|---|
[Java] 추상 클래스, 템플릿 메서드, final (0) | 2020.06.24 |
[Java] 메서드 오버라이딩, 가상 메서드 (0) | 2020.06.23 |
[Java] 묵시적 형 변환 (업캐스팅) (0) | 2020.06.22 |