2014-09-26 1 views
-2

숨바꼭질 저를 도와주세요?</p> <p>folowing 다형성 예제를 도와주세요는 fallowing 다형성 예를

ToyotaSUV는 Toyota 또는 Car 일 수 있습니까? 당신은 인터페이스를 instantaite 수 없습니다

+8

이것은'C++ '이 아니며'Java'입니다. – CoryKramer

+0

'Car '는 추상 인터페이스 클래스입니다. 'Toyota'는'Car'의 기본 클래스이고'ToyotaSUV'는'Toyota' 클래스에서 파생 된 하위 클래스입니다. 즉, 당신은 * 순수한 추상 클래스를 인스턴스화 할 수 없습니다. 이것은 '자동차'와 같습니다. – CoryKramer

+0

당신이 위에서 쓴 것은 괜찮습니까 (시도 했습니까?). 기본적으로 인스턴스를 "위로"캐스팅 할 수 있습니다. 즉, Toyota를 자동차로 참조하십시오. 그러나 모든 차가 도요타이기 때문에 주위에 다른 길은 아닙니다. –

답변

1
  1. 감사

    은, 그건 당신이 "자동차"를 인스턴스화 할 수 없습니다. 인터페이스는 생성자가 없기 때문에 인스턴스화 할 수 없습니다.

  2. ToyotaSUV는 Toyota이고 자동차로 작동 할 수 있습니다. 당신이 ToyotaSUV를 확장하는 순간 당신은 ToyotaSuv가 Toyota이고 Toyota가 할 수있는 것과 동일한 일을 할 수 있다고 말하고 있습니다. 또한 Toyota는 자동차 인터페이스로 작동 할 수 있기 때문에 ToyotaSUV가 자동차처럼 작동 할 수 있다고 말하면서 이러한 메소드를 상속받습니다.
+0

ToyotaSuv d = new Car()라고 말할 수는 없습니까? – SocketM

+0

아니, 할 수 없다. 그렇지 않으면 인터페이스 (자동차)가 설치 될 것이다. 할 수있는 일은 자동차입니다. c = (자동차) new ToyotaSUV() –