static修饰方法 会在初始化的时候加载进来,不用一定先要实例化一个对象然后才可以调用。当需要这个方法一初始化就运行的时候,就要使用static来修饰
Static 静态变量:
静态变量是固有的,可以直接被引用,其他成员变量仅仅在声明、生成实例对象后才存在,才可以被引用。所以把静态变量称为类变量,非静态变量称为实例变量。静态方法称为类方法,非静态方法称为实例方法。
这里的static 和c++里面的 static 相似
当变量是公用的时候可以使用 static 来修饰。
当函数没有访问对象特有的数据时可以使用static 来修饰方法。
静态变量可以直接用类名引用。
静态代码块:随着类加载而执行,只执行一次 。
用于给类进行初始化。
小例子:
class Person
{
String name ="zhangsan";
static String country = "CN";
public void show()
{
System.out.println(name + ":" + country);
}
}
public class StaticDemo
{
public static void main(String[] args)
{
System.out.println("国家是:" + Person.country);
Person p = new Person();
System.out.println("名字是:" + p.name);
}
}
分析:
这个程序关键的地方是System.out.println("国家是:" + Person.country);
这里直接用类名Person引用静态变量country。没有创建对象