static特点:
1.可以修饰成员变量或成员方法;
2.随着类的加载而加载,优先于对象存在;
3.被类的所有对象共用;
4.可以通过类名调用也可以通过对象调用(推荐使用类名调用)。
注意:
1.静态方法中是没有this关键字的(this随对象存在,static优先于对象存在);
2.静态方法只能访问静态的成员变量和静态的成员方法。
静态变量和成员变量的区别:
1.所属不同:静态变量属于类,成员变量属于对象;
2.在内存中的位置不同:静态变量存在与方法区的静态区,成员变量存在于堆内存中;
3.存在时间不同:静态变量随类的加载而加载随类的消失而消失,成员变量随对象的创建而存在随对象的消失而消失;
4.调用不同:静态变量可以通过类名调用也可以通过对象名调用(推荐使用类名调用),成员变量只能通过对象名调用。