将子类实例化为超类类型有什么好处?

时间:2014-04-27 20:46:53

标签: java oop

例如,假设我有一个Car超类和一个从Honda扩展的Car子类。 我知道我可以通过以下方式创建Honda对象:

Honda accord = new Honda();

我也可以这样做:

Car accord = new Honda();

但将协议实例化为Car类型有什么好处?

我知道如果我想搜索我可以使用if (var instanceof Car)的所有Car子类,但除此之外是否有任何特殊情况?

我只是难以绕过这个。

谢谢。

1 个答案:

答案 0 :(得分:-1)

  

但将协议实例化为Car类型有什么好处?

您不能将{1}类型实例化。您实例化一个对象,其类型为Car(以及Honda),您可以定义类型为Car变量指向对象。