Ниже я имею два класса. Парент и ребенок. Класс Child наследуется от класса Parent. В конструкторе класса родителя я вызываю метод print() родительского класса.
Когда я создаю объект Object для класса Child в методе main(), запускается конструктор класса Parent, и вместо метода родительского класса print() вызывается метод print() класса Child.
Q1. Почему это происходит.
Q2. Почему значение я равно 0
public class Sample
{
public static void main(String[] args)
{
Child objChild = new Child();
objChild.print();
}
}
class Parent
{
void print()
{
System.out.println("i Value");
}
Parent()
{
print();
}
}
class Child extends Parent
{
int i = 45;
void print()
{
System.out.println("i Value = "+i);
}
}
ОП
i Value = 0
i Value = 45