Este artigo descreve o uso de polimorfismo em Java com exemplos. Compartilhe com todos para sua referência. A análise específica é a seguinte:
O polimorfismo é o principal recurso das linguagens de programação orientadas a objetos. Encapsulamento e herança são relativamente simples, então farei apenas uma pequena observação sobre polimorfismo aqui. . .
1. O que é polimorfismo?
Polimorfismo significa que um objeto pode ter múltiplas características e exibir diferentes estados sob circunstâncias específicas para responder a diferentes propriedades e métodos. Em Java, implementação polimórfica refere-se ao uso da mesma interface de implementação para implementar diferentes instâncias de objetos.
Por exemplo, definimos uma classe Parent e, em seguida, definimos um método getName() para retornar uma string, definimos um método membro doSomething(Parent obj) cujo parâmetro formal é o tipo Parent e chamamos obj.getName() neste método. Em seguida, defina duas classes A e B, ambas herdadas da classe Parent, e substitua o método getName() na subclasse. Por fim, crie um objeto objP da classe Parent no método principal, chame o método objP.doSomething() e passe para ele as referências da classe A e da classe B. Observe a saída.
class Parent { private String name = "parent"; public String getName() { return this.name } public void doSomething(Parent obj) { //Nome da classe de saída System.out.println(obj.getName() }); public static void main(String[] args) { Parent objP = new Parent(); Ao passar uma referência a A, o método getName da classe A é chamado objP.doSomething(new B()); // Quando uma referência a B é passada, o método getName da classe B é chamado} } class A extends Parent { private String name = "class A"; //@Reescreva o método getName() public String getName() { return this.name; () Método public String getNome() {retornar este.nome;
Pode-se ver que o método doSomething da classe pai chama polimorficamente o método getName do objeto que passamos, em vez do método getName da própria classe Parent.
2. Interface em Java
Uma interface em Java é uma declaração de uma série de métodos. Uma interface possui apenas características de métodos, mas não a implementação de métodos. Esses métodos podem ser implementados de outro lugar por meio de classes específicas. Em Java, a palavra-chave interface é usada para declarar uma interface.
Exemplos de polimorfismo usando interfaces:
interface Name { //Apenas declara, não implementa public String getName(); class A implements Name { private String name = "class A"; //Implementa o método getName public String getName() { return name; implementa Name { private String name = "class B"; //Implementa o método getName public String getName() { return name; System.out.println(obj.getNome());
Como você pode ver, o nome da classe A, classe A, está impresso.
PS: Se uma classe não implementa todos os métodos na interface, então a classe deve ser declarada abstrata. Uma classe abstrata não permite instanciação de objetos.
Espero que este artigo seja útil para a programação Java de todos.