La diferencia entre los métodos estáticos y los métodos de instancia se refleja principalmente en dos aspectos:
Al llamar a los métodos estáticos externamente, puede usar el método "Nombre de clase. Nombre del método" o el "Nombre del objeto. Nombre del método". El método de ejemplo es solo el último método. Es decir, llamar a un método estático puede eliminar la necesidad de crear un objeto.
Al acceder a los miembros de esta clase, los métodos estáticos solo permiten el acceso a miembros estáticos (es decir, variables de miembros estáticos y métodos estáticos), pero no permiten el acceso a las variables de miembros de instancia y los métodos de instancia; Los métodos de instancia no tienen tales restricciones.
Los siguientes ejemplos muestran esta diferencia.
1. Ejemplo de llamar método estático
// ---------
El siguiente programa utiliza dos formularios para llamar a métodos estáticos.
// ----------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
El programa llama a los métodos estáticos dos veces, tanto permitidos como la salida del programa es la siguiente:
Este es un método estático. Este es un método estático.
Permitir que se llamen métodos estáticos sin crear objetos es que para reducir la molestia de los programadores al llamar a ciertos métodos comunes, Java permite a los programadores usar métodos en el lenguaje C tradicional utilizando funciones. Un ejemplo típico es que algunos programas anteriores usan "Math.ramdon ()" para obtener números aleatorios.
Otro representante típico son las matrices, la herramienta de procesamiento de matriz
2. Ejemplo de variables de miembro de acceso de método estático
// ----------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------- // Correcto, puede tener su propia variable local SA = 15; // Correcto, puede usar la variable estática ia = 30; // Correcto, puede usar la variable de instancia statMethod (); // Correcto, puede llamar al método estático}}
Este ejemplo se puede resumir en una oración: un método estático solo puede acceder a los miembros estáticos, y un método de instancia puede acceder a los miembros estáticos y de instancia. La razón por la cual los métodos estáticos no pueden acceder a las variables de miembros de la instancia es porque las variables de miembros de la instancia pertenecen a un objeto, y cuando se ejecutan los métodos estáticos, los objetos no existen necesariamente. Del mismo modo, debido a que un método de instancia puede acceder a variables de miembros de instancia, si se permite que un método estático llame a un método de instancia, lo permitirá indirectamente usar la variable de miembro de la instancia, por lo que tampoco puede llamar al método de instancia. Según el mismo principio, la palabra clave esto no se puede usar en métodos estáticos.
El método Main () es un método estático típico, que también sigue las reglas de los métodos estáticos generales, por lo que el sistema puede llamarlo antes de crear el objeto.
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.