Por que nós atribuímos uma referência pai ao objeto filho em Java?
Estou fazendo uma pergunta bem simples, mas estou um pouco confuso nisso.
Suponha que eu tenha uma aulaParent
:
public class Parent {
int name;
}
E ter outra aulaChild.java
:
public class Child extends Parent{
int salary;
}
E finalmente minha classe Main.java
public class Main {
public static void main(String[] args)
{
Parent parent = new Child();
parent.name= "abcd";
}
}
Se eu fizer um objeto infantil como
Child child = new Child():
Entãochild
objeto pode acessar tantoname and salary
variáveis.
Minha pergunta é:
Parent parent = new Child();
dá o acesso de apenasname
variável da classe pai. Então, qual é o uso exato dessa linha?
Parent parent = new Child();
E também quando está usando polimorfismo dinâmico, então por que a variável da classe filha não é acessível depois de fazer isso?
Parent parent = new Child();