java什么时候应该或者不应该使用更通用的变量类型来引用我的对象? 3 月 Questions & Answers 89 有两个类A和B,B扩展A。两者的区别是什么 A a = new B(); 及 B b = new B()? 两者都创建了B类的对象。有什么区别
# 1 楼答案 优点是 Fruit f = new Mango(); 假设 consumeFruit(Fruit f); 现在你可以打电话了 consumeFruit(new Mango()); consumeFruit(new Strawberry()); 注意: 在这种情况下,只能调用引用类型中声明的方法。对象类型的版本将被调用。您只能访问引用类型的类中的字段 另见 Liskov substitution principle
# 1 楼答案
优点是
假设
现在你可以打电话了
注意: 在这种情况下,只能调用引用类型中声明的方法。对象类型的版本将被调用。您只能访问引用类型的类中的字段
另见