notas de javaSE-polimorfismo

  El mismo comportamiento, a través de diferentes cosas, puede manifestar diferentes formas. El polimorfismo describe tal estado.

 

Definición: se refiere al mismo comportamiento, con múltiples manifestaciones diferentes.

 

Premisa polimórfica

  1. Herencia o realización [elija uno de dos]

  2. Reescritura de métodos [realización de significado: sin reescritura, sin sentido]

  3. La referencia de la clase principal apunta al objeto de la clase secundaria [realización de formato]

 

Polimorfismo

  Formato

    Nombre de variable de tipo primario = nuevo objeto de subclase;

    Nombre de la variable Nombre del método ();

    Fu z = new Zi (); // La clase padre hace referencia al objeto de clase hijo

    z.method (); // Llamar al método de la subclase

 

    Nota: Al usar un método polimórfico para llamar a un método, primero verifique si el método existe en la clase principal, si no, luego un error de compilación; si es así, ejecute el método después de que la subclase haya sido reescrita

 

    

 

    

 

    

 

 

Beneficios del polimorfismo.

  El tipo de clase padre se usa como parámetro formal del método, y el objeto de subclase se pasa al método, y se llama al método, que puede reflejar la extensibilidad y conveniencia del polimorfismo.

 

Conversión de tipo de referencia

  Transformación hacia arriba

    El polimorfismo en sí mismo es el proceso de conversión ascendente del tipo de subclase al tipo de superclase, que es el valor predeterminado.

      Desventajas

          No se pueden usar variables miembro y métodos miembros específicos para subclases

 

      Nombre de variable de clase principal = nuevo tipo de subclase ();

      Tales como: Animal a = nuevo gato ();

 

  Transformación hacia abajo: la premisa debe ser polimórfica

    El proceso de conversión descendente del tipo primario al tipo secundario es obligatorio.

      Nombre de variable de tipo de subclase = (tipo de subclase) nombre de variable de clase principal;

      如: Cat c = (Cat) a;

 

Por qué transformar

  Para llamar a métodos específicos de subclases, debe hacer una transformación descendente.

 

  

 

 

Transformación anormal

  El objeto gato se convertirá en un objeto perro aparecerá: ClassCastException

 

    Evite excepciones de conversión de tipo y haga juicios antes de la conversión

      Nombre de variable instancia de tipo de datos

      Si la variable pertenece al tipo de datos, devuelve verdadero.

      Si la variable no pertenece al tipo de datos, devuelve falso.

 

      

 

 

Resumen

  Para las variables miembro, los métodos estáticos se ven a la izquierda; los métodos no estáticos: se compilan a la izquierda y se ejecutan a la derecha.

  当父类变量引用子类对象时,在这个引用变量指向的对象中,他的成员变量和静态方法与父类是一致的;他的非静态方法,在编译时是与父类一致的,运行时却与子类一致(发生了重写)。

 

Supongo que te gusta

Origin www.cnblogs.com/love-xiaowu/p/12695338.html
Recomendado
Clasificación