问答详情
源自:8-7 Java 中的 static 使用之静态变量

不需要加类名也行啊

  // 定义静态变量,保存班级名称
 static String className = "JAVA开发一班";

 public static void main(String[] args) {
       
  // 访问静态变量,输出班级名称
  System.out.println( className );
 }
}


提问者:慕桂英9386435 2018-11-09 17:54

个回答

  • Jason_1995
    2018-12-17 19:25:13

    static修饰属性:

    1.同一个类的多个对象,各个对象各自拥有一份实例变量。共同拥有一份类变量。

      { 了解 :类加载过程

      1.创建对象时,会先去方法区查找该类的信息是否已经存在

      2.如果存在直接可以创建对象。如果不存在则进行类加载。

      3.类加载的时候已经将类变量加载到了方法区中。

      4.再创建另一个对象时先去方法区查看是否有类信息。已经存在则直接创建对象。

      }

      2.类变量是随着类的加载而加载的。类的加载优先于对象的创建。类加载只加载一次

      3.当一个对象对类变量进行修改时,其它的对象看到的是修改后的类变量。

      4.调用类变量 : 类名.类变量名    对象名.类变量名


  • 雀雀you
    2018-11-19 19:04:09

    你定义的是全局变量,在本类中当然可以直接使用啦。

    可以在main方法中直接输出是因为你的变量也是静态的,如果是普通全局变量则需要实例化本类对象之后才能在main方法中调用(也是直接使用变量名调用)

  • 菜鸟编成爱好者
    2018-11-09 19:04:44

    你在创建一个类,里面添加一个静态变量,用另外一个类在不实例化对象的情况下,只打类名,看看能不能调用,静态变量可以用类名调用,但是成员变量,必须先实例化(new XXX;)后才能调用。