Java 我从其中一个网站得到的答案是10,但我没有';我不明白为什么10
我从其中一个网站得到的答案是10,但我不明白为什么你得到了10,因为你使用了Java 我从其中一个网站得到的答案是10,但我没有';我不明白为什么10,java,inheritance,Java,Inheritance,我从其中一个网站得到的答案是10,但我不明白为什么你得到了10,因为你使用了A。如果按如下所示将其强制转换为B,您将获得20 class A { int i = 10; } class B extends A { int i = 20; } public class MainClass { public static void main(String[] args) { A a = new B();
A
。如果按如下所示将其强制转换为B
,您将获得20
class A
{
int i = 10;
}
class B extends A
{
int i = 20;
}
public class MainClass
{
public static void main(String[] args)
{
A a = new B();
System.out.println(a.i);
}
}
输出:
class A {
int i = 10;
}
class B extends A {
int i = 20;
}
public class Main {
public static void main(String[] args) {
A a = new B();
System.out.println(a.i);
System.out.println(((B) a).i);
}
}
与方法不同,字段不是动态选择的(我认为)
10
20