this关键字
this是一种特殊的引用,指向当前对象
this的两种使用方法:
如果发生局部变量和成员变量命名冲突时,可以通过this.成员变量名的方式区分成员变量和局部变量。
一个构造方法中需要调用本类的另一个构造方法,可以通过this()的方式调用,但this()必须要书写在第一行。
static关键字:
静态变量: 使用static修饰的成员变量叫做静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。
而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不
影响。static成员变量的初始化顺序按照定义的顺序进行初始化。
静态方法:
使用static修饰的成员方法叫做静态方法,静态方法可以不依赖于任何对象访问(对于静态方法,是没有this的),由于这个特性,在静态方法中不能访问类的非静态成员变量和非静态成员方法,因为非静态成员方法/变量都必须依赖具体的对象才能够被调用。
super关键字
super代表的是父类对象。
使用方式
super.属性名,super.方法名()
用于在子类调用父类被隐藏的同名实例变量
super([参数列表])
用于在子类的构造方法中调用父类的构造方法
每个子类的构造方法在没有显示调用super()系统都会提供一个默认的super(),super()必须
是构造器的第一个条语句。