我可以使用单个对象访问具有diff属性的不同类的方法吗?

时间:2018-05-22 12:11:09

标签: java oop inheritance polymorphism

注意:在面试中向我询问了这个问题

我们有3个不同属性的类。

class A{}

class B extends A{}

class C extends A{}

我可以使用单个Obj调用这3个类中的任何方法吗?

我感到困惑,因为 B级没有 C级的属性而反之亦然。

有没有办法让这成为可能?

2 个答案:

答案 0 :(得分:0)

  

我可以用Single Obj调用这三个类中存在的任何方法吗?   ?

您无法调用任何方法。只有在A类中声明的方法,其中任何对象具有A类型的引用

答案 1 :(得分:0)

我认为你被问到的问题是钻石问题,你可以在这里查看更多相关信息。 - > https://www.geeksforgeeks.org/multiple-inheritance-in-c/

来到你的问题,因为Java不支持多重继承,你不能使用单个对象调用这3个类中存在的任何方法。为了解决这个“钻石问题”,Java有一个叫做Interfaces的东西。因此,Android支持java和“接口”是面试官在谈论解决Android和Java中的“钻石问题”的概念。