[Java] Palabra clave estática basada en Java

Visión de conjunto 

        Static significa estático, que se utiliza para modificar miembros (incluidas variables y métodos de miembros). Defina las variables compartidas por todos los objetos de la clase actual como estáticas.

método de entrevista

Dos métodos de acceso:

1) Puede utilizar llamadas a objetos: objetos. Miembros estáticos

2) Puede usar el nombre de la clase para llamar: nombre de clase. Miembro estático

Recomendación: use el nombre de la clase para llamar

public  class Person{
    static string country;
}  


public class Test{
    public static void main(String[] args){
        //创建对象
        Person person=new Person();
        person.country;
        //或者直接类名.静态成员
        Person.country;
    }
}

Reglas de acceso para miembros estáticos

Reglas de acceso:

1) Static solo puede acceder directamente a estático, no no estático

2) No estático puede acceder directamente estático y no estático

package com.itheima_01;
public class AAA {
    //静态变量
    static int a ;
    //普通变量
    int b;

    //静态方法
    public static void method1(){
        System.out.println(a);  //静态方法可以访问静态变量
        System.out.println(b);  //静态方法不可以访问非静态变量
        method2();              //静态方法可以访问静态方法
        method3();              //静态方法不可以访问非静态方法
    }

    public static void method2(){
    }

    //普通方法
    public void method3(){
        System.out.println(a);
        System.out.println(b);
        method1();
        method4();
    }

    public void method4(){
    }
}

Notas sobre métodos estáticos

1) Una vez que se utiliza la palabra clave static, las variables miembro no se pertenecen a sí mismas, sino a la clase , mientras sean objetos de esta clase, todas comparten los mismos datos. Por ejemplo, las aulas de compañeros y estudiantes son las mismas y pueden declararse como estáticas

2) Ya sea una variable estática o un método estático, se recomienda usar el nombre de la clase para llamar

3) Los métodos estáticos no pueden llamar directamente a métodos no estáticos . Motivo: en la memoria, el contenido estático se genera antes que el contenido no estático. Es decir: las generaciones futuras conocen a los antepasados, pero los antepasados ​​no conocen a las generaciones futuras [por ejemplo, conocemos a Qin Shihuang, pero Qin Shihuang no nos conoce] ( siempre se prefiere estático a no estático )

4) Los métodos estáticos no pertenecen a objetos, sino a clases.

5) Esta llamada no se puede usar en un método estático. Esto representa el objeto actual, y un método estático pertenece a una clase. Después de que se carga la clase, el objeto no necesariamente existe. Si usa esta llamada, se producirá un error .

6) La primera ejecución de un bloque de código estático se ejecuta solo una vez

Supongo que te gusta

Origin blog.csdn.net/weixin_43267344/article/details/107886087
Recomendado
Clasificación