Este artículo estudia principalmente la equivalencia de instancia y clase en Java, como sigue.
La instancia del operador en Java se usa para indicar si un objeto es una instancia de una clase específica en tiempo de ejecución. InstanceOf indica si el objeto es una instancia de esta clase en particular o una subclase devolviendo un valor booleano.
Ejemplo 1 (instancia)
Interfaz
Persona de interfaz pública {public void eat ();}Implementar la clase de personas
La gente de clase pública implementa a la persona {private int a = 0; @Override public void eat () {System.out.println ("======="+A); }}Subclase Xiaoming:
public class Xiaoming extiende a las personas {nombre de cadena privada; @OverridePublic Void eat () {System.out.println ("+++++++++++");}}Función principal
public static void main (string [] args) {personas p = new People (); Xiaoming x = new Xiaoming (); System.out.println (Peste de persona); System.out.println (Peste de Xiaoming); ----- 2 System.out.println (x instancia de persona); System.out.println (x instancia de personas); }Nota: El código en el anterior 2 no informará errores durante la compilación.
Resultados de ejecución:
TrueFalSettrue
Ejemplo 2
paquete com.test.class_obj; class base {} La clase derivada extiende la base {} public class FamilyVSExActType {Test Static void (Object X) {System.out.println ("Prueba x de tipo" + x.getClass (). getSimplename ()); System.out.println ("----------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------- Base)); system.out.println ("x instancia de derivado" + (x instanciaf Derivado)); System.out.println ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------- Derived.class.isInstance(x));System.out.println("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------- (x.getClass (). Equals (base.class))); system.out.println ("x.getClass (). igual (derivado.class))" + (x.getClass (). Equals (Derived.Class))); System.out.println ("******************************************************"); {test (new Base ()); test (new Derived ());}}El contenido de salida es el siguiente:
Prueba x de tipo Base---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------- Falso *************************************************************************** Derivado ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------- Base.class falsesex.getclass () == derivado.class trueex.getClass (). Equals (base.class)) falsesex.getclass (). Equals (Derived.class)) true********************************************************************************************************************************************************************************************************************************* Process finished with Código de salida 0
A través de las pruebas anteriores, se pueden sacar las siguientes conclusiones:
Resumir
Lo anterior es todo el contenido de este artículo sobre el ejemplo de código de equivalencia de instancia y clase en Java. Espero que sea útil para todos. Los amigos interesados pueden continuar referiéndose a otros temas relacionados en este sitio. Si hay alguna deficiencia, deje un mensaje para señalarlo. ¡Gracias amigos por su apoyo para este sitio!