Quando estamos nos preparando para escrever uma classe, descobrimos que uma determinada classe possui as variáveis e métodos de membro de que precisamos. Se quisermos reutilizar as variáveis e métodos de membro nesta classe, não precisamos declarar variáveis e definições de membro na classe. classe que escrevemos. Método é equivalente a ter esta variável e método de membro, então podemos definir a classe que escrevemos como uma subclasse desta classe.
Herança é um mecanismo para criar novas classes a partir de classes existentes. Usando herança, podemos primeiro definir uma classe geral com atributos comuns e, em seguida, definir uma subclasse com atributos especiais com base na classe geral. e comportamentos, e adicionar suas próprias novas propriedades e comportamentos conforme necessário. A classe obtida por herança é chamada de subclasse, e a classe herdada é chamada de classe pai (superclasse).
Perceber:
Java não suporta herança múltipla, ou seja, uma subclasse pode ter apenas uma classe pai. As pessoas estão acostumadas a chamar o relacionamento entre uma subclasse e uma classe pai de relacionamento "é um".
Na declaração de uma classe, uma subclasse de uma classe é definida usando a palavra-chave extends.
o nome da subclasse da classe estende o nome da classe pai {…}
Por exemplo:
classStudentexendsPeople{…}
Defina a classe Aluno como uma subclasse da classe Pessoas, e a classe Pessoas é a classe pai (superclasse) da classe Aluno.
Estrutura da árvore de classes:
Se C é um subtipo de B e B é um subtipo de A, costuma-se chamar C de descendente de A. As classes Java formam uma estrutura em árvore de acordo com os relacionamentos de herança (pense nas classes como nós na árvore, nesta estrutura em árvore, o nó raiz é a classe Object (Object é uma classe no pacote java.lang), ou seja, Object). é a classe ancestral de todas as classes. Qualquer classe é descendente da classe Object. Cada classe (exceto a classe Object) possui uma e apenas uma classe pai. Uma classe pode ter múltiplas ou nenhuma subclasse.
Perceber:
Se a palavra-chave extends não for usada na declaração de uma classe (exceto a classe Object), a classe será padronizada como uma subclasse de Object pelo sistema. Por exemplo: a declaração de classe "classe A" é equivalente a "classe A estende objeto".