this关键字的用法
在方法内部,可以使用一个隐含的变量this,它始终指向当前实例。因此,通过this.field就可以访问当前实例的字段.
static关键字的用法
<1>静态字段:只有一个共享“空间”,所有实例都会共享该字段.实例字段:实例字段在每个实例中都有自己的一个独立“空间”,各个实例的同名字段互不影响.
<2>静态方法:用static修饰的方法称为静态方法,调用实例方法必须通过一个实例变量,而调用静态方法则不需要实例变量,通过类名就可以调用.静态方法类似其它编程语言的函数.
静态成员变量与非静态成员变量的区别
<1>对于静态字段,无论修改哪个实例的静态字段,效果都是一样的:所有实例的静态字段都被修改了,原因是静态字段并不属于实例.
<2>静态方法内部,无法访问this变量,也无法访问实例字段,它只能访问静态字段.通过实例变量也可以调用静态方法,但这只是编译器自动帮我们把实例改写成类名而已.
代码块
<1>实例块:每次创建对象时自动调用.
<2>静态块:类加载时自动调用,仅一次,与是否创建对象无关.