1.static修饰成员变量(静态成员变量)
静态成员变量的特性:
1.不属于某个具体的对象,是类的属性,所有对象共享的,不存储在某个对象空间中
2.既可以通过对象访问也可以通过类名访问(推荐类名访问)
3.类变量存储在方法区中
4.生命周期伴随类的一生(随类的加载而创建,随类的销毁而销毁)
1.使用static可以直接“类名.方法名”直接使用(如下所示)
class Student{
public String name;
public int age;
public static String nationality="中国";
}
public class Test {
public static void main(String[] args) {
System.out.println(Student.nationality);
}
}
(如果没有加static的话呢?)如下图:无法直接使用
那如果没有static,怎么使用?
(创建一个新的对象,引用调用)
class Student{
public String name;
public int age;
public String nationality="中国人";
}
public class Test {
public static void main(String[] args) {
Student student=new Student();
System.out.println(student.nationality);
}
}
注:在静态方法内部,不能直接调用非静态方法(即没有用static修饰的成员变量)
建议:获取静态的变量或设置静态的成员变量,此时方法最好的静态的。
2.静态方法的初始化
2.1直接赋值
public String nationality="中国人";
2.2默认初始化
2.3通过get和set方法初始化
public static int getSize() {
return size;
}
public static void setSize(int size) {
this.size = size;
}