본문 바로가기
Java

Polymorphism(다형성) & Upcasting+Downcasting

by 개발자공부 2024. 4. 26.

다형성 Polymorphism

  다형성은 데이터타입 하나를 다양한 형태로 바라볼 수 있는 것을 말한다.

 

  다형성은 객체 지향 프로그래밍에서 중요한 개념 중 하나이다. 이는 한 요소(예: 메서드, 클래스)가 여러 형태를 가질 수 있는 능력을 의미합니다. 다형성은 코드의 유연성과 재사용성을 높여주며, 상속, 추상화, 인터페이스와 함께 사용됩니다.


업캐스팅 Upcasting 

업캐스팅은 부모 클래스의 참조 변수로 자식 클래스의 객체를 참조하는 것을 말한다.

부모 클래스의 데이터 타입으로 자식 클래스의 객체를 대입하는 것을 의미합니다.

업캐스팅은 자동으로 이루어집니다.

(자동 형 변환 생각해보기)

 

다운캐스팅 Downcasting

다운캐스팅은 부모 클래스의 참조 변수를 자식 클래스의 객체로 변환하는 것을 말한다.

다운캐스팅은 명시적으로 형변환을 해야 한다.

다운캐스팅은 업캐스팅된 객체가 실제로 자식 클래스의 객체일 때만 가능합니다. 그렇지 않으면 ClassCastException(예외)이 발생할 수 있습니다.


다형성을 이용하여 뽑기 게임 만들어보기

 

'Java' 카테고리의 다른 글

Interface (인터페이스)  (0) 2024.04.26
Abstract class (추상 클래스)  (0) 2024.04.26
Dependency (의존관계)  (0) 2024.04.26
Association(연관관계)  (0) 2024.04.25
Composition(포함관계)  (0) 2024.04.24