1. 다형성 (Polymorphism)

1️⃣ 정의

다형성이란 하나의 부모 타입 참조 변수로 여러 자식 객체를 참조하고, 실행 시점에 실제 객체의 메서드가 호출되는 성질을 말합니다.

“같은 타입, 다른 동작”


2️⃣ 핵심 의미

👉 Java 다형성은 메서드 호출에만 적용


3️⃣ 기본 예시

Animal a = new Dog();
a.sound(); // Dog의 sound 실행

2. 업캐스팅 (Upcasting)

1️⃣ 정의

업캐스팅이란 자식 객체를 부모 타입 참조 변수로 참조하는 것입니다.

부모타입 변수 = 자식객체;

2️⃣ 특징