- ParametricPolymorphism . . . . 8 matches
그중 차들을 추상화하여 표현한 명사 Car, 그것의 하위의 것들은 sportCar, luxuryCar 이렇게 3개의 객체를 생각해보자.
당연히 Car 와 sportCar, luxuryCar 는 서로 동일한 원리로 움직이겠지만 동일하지는 않다.
return new SportCar();
Car sportCar = getCar("young man");
SportCar, LuxuryCar는 Car를 상속받는 클래스 이므로 IS-A의 관계라고 할 수 있다.
따라서 SportCar, LuxuryCar의 인스턴스(instance)가 Car객체 변수인 sportCar, luxuryCar에 대입이 가능하다.
Car sportCar = getCar("young man");
sportCar.startTurboEngine();
SportCar sportCar = getCar("young man");
sportCar.startTurboEngine();
역시 에러가 난다. SportCar에 대입되는 getCar():Car는 SportCar보다 상위의 개념은 Car이기 때문이다.
SportCar sportCar = (SportCar) getCar("young man");
sportCar.startTurboEngine();
Found 1 matching page out of 7555 total pages (5000 pages are searched)
You can also click here to search title.