11.1 다형성

객체 지향 프로그래밍의 대표적인 특징으로는 캡슐화, 상속, 다형성이 있다. 그 중에서 다형성은 객체 지향 프로그랭의 꽃이라 불린다.

다형성(Polymorphism)은 이름 그대로 다양한 형태여러 형태 를 뜻한다.

프로그래밍에서 다형성은 한 객체가 여러 타입의 객체로 취급될 수 있는 능력을 뜻한다. 보통 하나의 객체는 하나의 타입으로 고정되어 있다. 그런데 다형성을 사용하면 하나의 객체가 다른 타입으로 사용될 수 있다는 뜻이다.


11.2 다형적 참조

부모와 자식이 있고, 각각 다른 메서드를 가진다.

다형적 참조 : 부모 타입의 변수가 자식 인스턴스 참조

System.out.println("Parent -> Child");
Parent poly = new Child();
poly.parentMethod();

부모는 자식을 담을 수 있다.

다형적 참조