接上上一篇
static 成员
由同一个类实例化成对象,他们的成员在每一个类中是独立的,like this
这些成员是没有共同的成员,这些变量每个对象中都哟一份称之为实例变量
而static修饰的成员叫做静态成员,储存在方法区中,也叫类成员,他不是那个对象特有的成员,而是所有成员都共有的变量 like this
classroom这个成员是每个类都可以调用的,他的使用不依赖与对象,也就是说他的调用可以这样
他的调用不需要借助对象,也就是说你可以不用实例化对象就能使用
特性
1,他不属于某个类,也是每个类所共有的,你在每个类中调用的都是同一个成员
2,可以通过类名调用,也能通过对象调用
3,不能再非静态的方法中访问任何静态成员
代码块
使用 {} 的一段代码就叫做代码块
代码块一般分为普通代码块,构造代码块,静态代码块,同步代码块
普通代码块
写再方法中的代码块
用的少
构造代码块(实例代码块)
写再类中一般是用来初始化实例成员变量
静态代码块
一般用于初始化静态成员变量 用static修饰的{}
注意
静态代码块不管类生成多少个对象都只会生成一次
静态成员变量是类的属性,因此是再加载类时就给他开辟了空间并初始化了的,也就是说再还未实例化类的时候,静态代码块中的代码就已经执行了并再方法区开辟了一块空间
如过类中包含多个静态代码块,他们的执行顺序时从上到下
实例代码块只有创建对象的时候才会执行
他们的执行顺序
静态代码块 ----> 实例代码块 ----> 类方法(构造方法)
ED YEYE