estática: (Modificador estático) El contenido de la modificación estática en un objeto orientado al objeto pertenece a la clase, no directamente afiliado al objeto, por lo que las variables del miembro modificadas por estática generalmente se denominan variables de miembros de clase, y el método de modificación estática generalmente se llama métodos de clase.
Clasificación:
1. Variables estáticas, también llamadas variables estáticas o variables de clase. Otro tipo es una variable que no es modificada por Static, llamada variable de instancia.
2. Método estático, también llamado método estático o método de clase, no puede definir variables estáticas en métodos estáticos, y los métodos de instancia no pueden.
3. Bloque de código estático, en un bloque estático, puede acceder a variables estáticas y llamar a métodos estáticos.
Notas:
1. Si la estática no depende de ningún objeto, no hay este método.
2. El método estático no puede llamar a un método no estático, pero un método no estático puede llamar a un método estático.
3. Los métodos o variables modificados por Static no necesitan confiar en objetos para el acceso. Mientras se cargue la clase, se puede acceder a través del nombre de la clase.
4. El método estático no se puede reescribir. Cuando la subclase y la clase principal tienen el mismo método estático, la llamada predeterminada es el método estático de la clase principal, y el método estático de la subclase está oculto.
5. Los bloques estáticos generalmente se usan para inicializar las variables estáticas en las clases. Basado en el contenido de modificaciones estáticas, se sigue el principio de primera definición y primera ejecución.
6. Si a menudo se les llama variables o métodos, use modificación estática. De lo contrario, úselo menos para evitar la fuga de memoria.
Código de ejemplo de variables estáticas:
prueba de clase pública {static int a = 1; // variable estática int b = 2; // Instance Variable public static void main (string [] args) {System.out.println (test.a); //System.out.print(a) ;System.out.println(b); // La variable de salida directa B informará una prueba de error t = nueva test (); // Crear objeto de instancia System.out.println (TB); // Variable de llamadas de objeto}}Ejemplo de código para métodos estáticos:
prueba de clase pública {static int a = 1; // variable estática int b = 2; // Variable de instancia void estática a () {// método estático b (); // Se informa un error, el método estático no puede llamar al método no estático System.out.println (test.a); //System.out.print(a) ;hiBLET B () {// Método no estático test.a (); //A(); El método no estático puede llamar al método estático System.out.println (b); System.out.println (test.a); //System.out.print(a); °; // a (); b (); // se informa un error, los métodos no estatales deben llamarse a través de una prueba de objeto de instancia t = nuevo test (); tb ();}}/**¿Se puede reescribir*/class StaticSon extiende la prueba {// subclass hereda la clase principal void a () {// se informa un error, el método estático de la clase principal no se puede reescripción /*...*/} Void static a () {) {) {) {) {)? Método de la subclase, estrictamente hablando, no es un método estático de la clase principal}}Ejemplo de código de bloque estático:
prueba de clase pública {int c = 3; static int a = 1; static int b = 2; estática {a = 10; b = 20; c = 30; // Informar un error, la variable en el bloque estático debe ser la variable estática System.out.println (a+b);} public static void main (string [] args) {test t = new test (); system.println (tc); // Ejecutar primero la variable estática, luego ejecute la variable de instancia}} Final: Comprender como inmutable.
Notas:
1. Final y estático a menudo se usan juntos.
2. Las variables modificadas por final solo se pueden asignar una vez.
3. El método final no se puede reescribir, pero se puede sobrecargar.
4. La clase final no puede ser heredada.
5. Las dos palabras clave finales y abstractas son opuestas, y es imposible modificar la clase al mismo tiempo. Porque la final no se puede reescribir, y el resumen debe reescribirse.
6. La palabra clave final es diferente de la palabra clave final, que se utiliza para el manejo de excepciones.
7. En la mayoría de los casos, final no se usa para modificar métodos y clases porque no son escalables.
8. Final se puede usar en un determinado entorno para mejorar el rendimiento del programa y optimizar la estructura del programa.
Ejemplo de código de variables finales y clases finales:
Prueba de clase final pública {Final static int a = 1; estático {a = 10; // Informar un error, solo se puede realizar una operación de asignación}} Finalson de clase extiende la prueba {// Informar un error, la clase final no se puede heredar}Código de ejemplo del método final:
prueba de clase pública {final static int a = 1; final void a () {// método final system.out.println (a);}} La clase final extiende la prueba {void a () {// se informa un error, el método final no puede ser reescrito System.out.println ("Err");}} final de la clase final de la clase {// final y el abstracto no puede existir atta atta atta atto.