this关键字
基本概念
在构造方法中this关键字表示的是正在构造的对象
在成员方法中this关键字表示的是正在调用该方法的对象
- this关键字相当于汉语中"我的"意思(每个人都可以说我的,但是我的所表示的对象不同)
原理分析
当成员方法中调用成员变量时会自动在成员变量前面加上this.(相当于汉语的"我的"), 当不同的引用调用不同的成员方法时会产生不同的this. ,所以this.访问的结果也就自然不同.
使用方式
1.当形参变量名和成员变量名相同时,系统一般会选择都默认为形参变量名,当要表示成员变量时就要在变量名前面加this.进行说明(重中之重)
- 就近原则:当形参变量和成员变量同名时,在构造方法和成员方法中就要考虑就近原则,也就是优先选取近的,一般情况下是选取局部变量为默认
当使用形参变量给成员变量赋值时,一般选用相同的形参变量名和成员变量名,但是一定要记住:在成员变量前面加this. ,以免系统将同名的形参变量和成员变量通过就近原则全部视为形参变量
2.在本类中的第一行使用this(实参)的方式可以调用本类中的其它构造方法
注意:
- 上面调用本类中的其他构造方法时this(),这里的()内为实参
- 在构造方法中用this关键字调用其他构造方法时,this()一定要写在构造方法中的第一行
当一个引用类型变量赋值为null时(也就是他没有指向任何一个对象时).如果通过这个引用访问对应的成员变量或者调用方法时就会产生空指针异常(
NullPointerException)