this
- this:指代当前对象,哪个对象调指的就是哪个对象
方法中访问成员变量之前默认都有个this - this的用法:
this.成员变量名------------访问成员变量
this.方法名()--------------调用方法
this()---------------------调用构造方法
super
- super:指代当前对象的父类对象
- super的用法:
super.成员变量名------------访问父类的成员方法
super.方法名()--------------调用父类的方法
super()---------------------调用父类的构造方法
static:静态的
静态变量:
- 由static修饰
- 属于类的,存在方法区中,只有一份
- 常常通过类名.来访问
- 何时用:所有对象的数据都一样时使用,只有一份的
静态方法:
- 由static修饰
- 属于类的,存在方法区中,只有一份
- 常常通过类名.来访问
- 没有隐式的this传递
静态方法中不能直接访问实例成员 - 何时用:方法的操作仅与参数相关而与对象无关时使用
静态块:
- 由static修饰
- 属于类的,类被加载期间自动执行
类只能被加载一次,所以静态块只能执行一次 - 何时用:常常用于加载/初始化静态资源(图片、音频、视频)
final:不能变
- 修饰变量:变量不能被改变
- 修饰方法:方法不能被重写
- 修饰类:类不能被继承
static final常量
- 必须声明同时初始化
- 通过类名点来访问,不能改变
- 建议:常量名所有字母都大写
- 在编译时被直接替换为具体的值,效率高