Java关键字static

static 关键字

在类中,用static声明的成员变量为静态成员变量,它为该类的公共变量,在第一次使用时就被初始化,对于该类的所有对象来说,static成员变量只有一份

用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员

       (静态方法不再是这对某个对象调用,所以不能访问非静态成员)

可以通过对象引用或类名(不需要实例化)访问静态成员

public class Cat {
    private static int sid = 0;
    private String name;
    int id;
    Cat (String name) {
        this.name=name;
    }
    public void info() {
        System,out.println("My name is " + name + "No." + id);
    }
    
    public static void main(String args[]) {
    
        Cat.sid = 100;
        Cat mimi = new Cat("mimi");
        Cat bibi = new Cat("bibi");
        mimi.info();
        bibi.info();
        }
}

静态成员变量只有一份,存在data segment中

非静态成员变量 new一个对象就有一份


你可能感兴趣的:(java,关键字,static)