在Java中,如果我:
这是否也意味着C类是A类?
答案 0 :(得分:6)
是。 “是一个”关系考虑超类,它的超类(等等,最多Object
),以及这些类实现的任何接口。
答案 1 :(得分:4)
是
这是一个例子: 如果所有的狗都是哺乳动物而所有的哺乳动物都是动物,那么所有的狗都必须是动物。
答案 2 :(得分:1)
这个问题事实上与Java几乎没有关系。它涉及知识表示模型。我可以想到特别是与DAG(有向无环图)有很大关系的本体。是的,"是"关系是可传递的,所以问题的答案也是"是"。你可以谷歌任何你不熟悉的概念(来自我的回答)。
答案 3 :(得分:1)
是的,C
也属于A
类型:
class A
{
public A() { }
}
class B extends A
{
public B() { }
}
class C extends B
{
public C() { }
}
编译:
A instanceC = new C();
这是唯一可能的,因为A
是C
答案 4 :(得分:0)
是。这是一个证明它的例子。
public class A {
private int a=3;
public int getA() {
return a;
}
}
public class B extends A {}
public class C extends B{}
并测试它
C c = new C();
c.getA(); //returns 3