Exemplo 1
A classe só pode ser estendida quando o modificador "estende" é usado com ele. Então, apenas a classe pode acessar os campos e propriedades de outra classe. O snippet de código a seguir tem um exemplo básico para demonstrar a palavra -chave Extend.
Aqui, criamos a classe pai "gerente". Na classe pai "Gerente", definimos as variáveis "status" e "OrganizationName". Essas variáveis contêm valores de string em cada variável individualmente. Depois disso, definimos a função “ParentClass ()” da classe pai “gerente”, onde imprimimos a declaração.
Em seguida, declaramos a classe infantil "ExtendClassexample1", que usa a palavra -chave "estender" para a classe pai "gerente". Agora, acessamos as variáveis especificadas e a função da classe pai "Gerente" nesta classe infantil. Criamos uma variável "Departamento" da classe infantil "ExtendClassexample1" e atribuímos o valor a ele. Em seguida, criamos o método main () para executar o código. Ligamos para a classe infantil lá e definimos o objeto "Myobj" para esta aula infantil.
Com o objeto "Myobj" da classe infantil "ExtendClassexample1", acessamos as variáveis e a função "parentClass ()". Os valores que as variáveis e a função mantêm da classe pai "gerente" serão impressos na tela.
As propriedades da classe pai são exibidas no console, que obtivemos da classe infantil. A palavra -chave "estende" gera a relação entre a classe pai e a classe infantil.
Exemplo 2
A palavra -chave "estendida" não pode ser implantada com a classe que é definida com a palavra -chave final, pois não podemos criar a classe Child da classe final. Uma vez que a classe final é construída, a herança não é possível porque torna a classe imutável. Abaixo, fizemos a operação prolongada da classe final para saber como ocorreu a mensagem de erro.
Aqui, definimos uma classe "primeiro" com o modificador "final". Criamos a função "show ()" dentro da classe final e imprimimos a mensagem da string. Em seguida, declaramos uma aula "Second", que é a subclasse da classe final "primeiro" usando a palavra -chave "estende". Chamamos a mesma função "show ()" da classe final "primeiro" e passamos outra declaração de impressão para ela. Em seguida, construímos outra classe, "ExtendCllassexample2", para o método Main (), que executa os métodos de outra classe. Declaramos o objeto "Obj1" para a classe final "primeiro" e também definimos o objeto "obj2" para a subclasse "Segundo".
Quando o programa acima é executado, o erro é lançado de que a classe final não pode ser herdada em Java.
Exemplo 3
Podemos usar a cadeia da palavra -chave "estende" com as classes. Isso é conhecido como java múltiplas heranças, onde uma classe derivada se estende da classe base, e essa classe derivada se torna uma classe base para outra classe derivada.
Aqui, estabelecemos uma classe base, "Família", que é definida com a função pai (). A função parent () é definida com a mensagem que será exibida através do método print (). Em seguida, criamos uma classe derivada "Child1" da "família" da classe base, implantando o modificador "estender" entre a classe.
Lá, também declaramos uma função "filho", que tem a mensagem impressa. Em seguida, especificamos outra classe, "Child2", que é derivada da classe "Child1" pela palavra -chave "estender". Esta classe "Child1" agora é a classe base para "Child2". Chamamos uma função de "neto ()" dentro da classe, que também exibiu a instrução String. Em seguida, temos uma classe principal, “ExtendClassexample3”, do programa porque a função principal () é definida dentro dele. Criamos o objeto "OBJ" para "Child2" e chamamos as funções das classes base.
As declarações das classes base e da classe derivada são inseridas no console. Dessa forma, podemos realizar várias heranças enquanto utiliza o modificador "estender".
Exemplo 4
A palavra -chave "estende" também é usada para herança hierárquica. Quando as subclasses são estendidas de apenas uma superclasse, esse caso é indicado como herança hierárquica.
Aqui, temos uma superclasse, "professor", que tem uma função "professor_info". Em seguida, definimos três subclasses, "Student1", "Student2" e "Student3", que também são especificadas com as funções, e a palavra -chave "estende" as estende da superclasse "Professor". Em seguida, temos uma aula de motorista, "ExtendClassCase4", que possui o método principal (). Declaramos os objetos "S1_OBJ", "S2_OBJ" e "S3_OBJ" de cada subclasse, e cada subclasse é chamada de função "professor_info" da superclasse.
A declaração de funções de cada subclasse é exibida no console com a declaração de função da superclasse que as subclasses chamaram.
Exemplo 5
A classe estendida, que é formada usando o modificador "Extends", também pode substituir as operações da superclasse. No programa a seguir, realizamos a operação de substituição na função de superclasse.
Aqui, formamos uma superclasse, "frutas" e definimos uma função "suco ()" dentro dela. A função "suco ()" tem uma corda de impressão. Em seguida, estendemos a "fruta" da superclasse criando a subclasse "maçã" com o modificador "estende". Invocamos a função de “fruta” da superclasse “suco ()” dentro dela, especificando a palavra -chave “@Override” e modificando a string com a nova mensagem de string.
Além disso, temos uma nova função, "Drinks ()", da subclasse, que também contém a mensagem da string. O objeto "A" é declarado para a subclasse "Apple", que invocou suas funções.
Portanto, substituímos a declaração da função de superclasse dentro da subclasse, que é mostrada aqui como saída.
Conclusão
A palavra -chave "estendida" é usada pela classe derivada para estender a classe base. A palavra -chave "estende" demonstra herança entre a classe base e as classes derivadas. Estendemos as subclasses da superclasse com o modificador "estende" nos exemplos acima. Conseguimos as interfaces da herança múltipla e hierárquica, empregando a palavra -chave "estender".