Я не мог понять, как JVM дает результат 10. Мы не можем создать объект абстрактного класса, тогда как JMV внутренне управляет созданием объекта абстрактного класса.Как JVM создает объект абстрактного класса?
abstract class A {
int a = 10;
}
class B extends A {
int a = 20;
}
public class Sample {
public static void main(String [] args) {
A obj = new B();
System.out.println(obj.a); // prints 10
System.out.println(((B)obj).a); // prints 20
}
}
Err это код от вопроса, дословно? –
@GyroGearless Код в вопросе был отредактирован после того, как я опубликовал свой ответ. – Eran