Static(静态)
Java的内存划分:
Static可以修饰的目标:
• 1.用来修饰成员变量和成员方法
• 2.也可以形成静态static代码块。
Static修饰目标的调用:可以直接通过类名.调用(也可以通过对象不推荐)
类名.属性
类名.方法()
非Static修饰的属性和方法只能通过对象调用。
static的存放:
1.静态存放在全局数据区,在类初始化的时候创建,会先于对象
2.非静态只能存放在堆里面,需要new来开辟堆内存。
由于static先出生,非static后出生。
Static中不能调用非static的属性和方法!也不能使用this和super关键字(非Static方法可以调用static方法)
最后!!静态虽简单,使用需谨慎!!!因为不能被GC回收垃圾,所以在类被创建时候创建,程序结束之后才清理内存。
变量的划分:
1. 作用域划分:成员变量&局部变量(publicstatic代替全局)
2. 静态划分:静态变量&实例变量