static关键字
1.static静态变量
static修饰的成员变量叫做静态变量【也叫做类变量】,静态变量是属于这个类,而不是属于是对象。
还有一点需要注意的是:static是不允许用来修饰局部变量。
2.static静态方法
static修饰的方法也叫做静态方法,其实我们最熟悉的static静态方法就是main方法了,由于对于静态方法来说是不属于任何实例对象
的,this指的是当前对象,因为static静态方法不属于任何对象,所以就谈不上this了。简单来说静态方法中不能出现this因为没有实例
变量可以调用。
还有一点就是:构造方法不是静态方法!
3.static静态块
这块后续补充
4.static静态变量与实例变量的区别
静态变量由于不属于任何实例对象,属于类的,所以在内存中只会有一份,在类的加载过程中,JVM只为静态变量分配一次内存空间。
实例变量每次创建对象,都会为每个对象分配成员变量内存空间,实例变量是属于实例对象的,在内存中,创建几次对象,就有几份
成员变量。
5.static注意事项
1、静态只能访问静态。
2、非静态既可以访问非静态的,也可以访问静态的。