Este artículo describe el polimorfismo de la programación orientada a objetos en Java. Compártelo para su referencia, como sigue:
Polimorfismo: características que tienen la capacidad de expresar múltiples formas (la misma interfaz de implementación utiliza diferentes instancias para realizar diferentes operaciones)
Ventajas de implementar el polimorfismo: ¡para facilitar las llamadas unificadas!
¡Tres formas de lograr el polimorfismo!
1. Conversión de la subclase a la clase principal:
ejemplo:
Perro perro = nuevo perro ("euo", "schnauzer"); dog.eat (); mascota pet = nuevo dog ("eUoo", "schnauzer")); // conversión de subclase a clase parent pet.eat (); pet.CatchingFlyDisc (); // Error de compilación, referencia de la clase padre no puede llamar el método especial de subclasesregla:
① Apunte una referencia a una clase infantil a un objeto llamado transformación ascendente y realice automáticamente la conversión de tipo.
② El método llamado por variables de referencia a través de la clase principal es la clase infantil que anula o heredan el método de la clase principal, no el método de la clase principal.
③ En este momento, el método exclusivo de la subclase no puede llamarse haciendo referencia a variables a través de la clase principal.
2. Use la clase principal como método parámetros formales para implementar el polimorfismo
Public Class Master {private String name = ""; Private int dinero = 0; public Master (nombre de cadena, int dinero) {this.name = name; this.money = dinero; } public void Feed (Pet Pet) {pet.eat (); } Feed público nulo (perro perro) {dog.eat (); } Feed público vacío (Penguin Pen) {Pen.eat (); }} public class test () {public static void main (string [] args) {maestro maestro = nuevo maestro ("mr. wang", 100); Mascota mascota = perro nuevo ("euro", "schnauzer"); maestro.feed (mascota); }}3. Use la clase principal como valor de retorno del método para lograr el polimorfismo
Public Class Master {private String name = ""; Private int dinero = 0; public Pet GetPet (int id) {Pet Pet = Null; if (id == 1) {pet = nuevo perro ("Europa", "Schnauzer")} else if (id == 2) {pet = new Penguin ("Nana", "Emperor Penguin"); } return Pet; }}Aviso:
① La existencia de herencia (la herencia es la base del polimorfismo, sin herencia, no hay polimorfismo)
② Métodos de subclase reescribiendo la clase de padres
③ Variables de referencias de clase principal a objetos de subclase
Para obtener más contenido relacionado con Java, los lectores interesados en este sitio pueden ver los temas: "Introducción y tutorial avanzado sobre la programación orientada a objetos de Java", "Tutorial sobre la estructura de datos de Java y el algoritmo", "Resumen de la operación de Java DOM Node Node", "Summary of Java File and Directory Operation Skilly" y "Summary of Java Cache Skitch" Habilidades "
Espero que este artículo sea útil para la programación Java de todos.