Java隐式参数this
1、每个方法都都会有两个隐式参数一个this,一个super
2、在普通方法中this指向调用该方法的对象
3、构造方法中this指向正要初始化的对象
4、反正不管怎么样,一句话,this指向调用我的那个对象
5、this不用用于静态方法,原因很简单,由于static属性和方法从属于类,静态方法中不包含this,super隐式参数,也就是不包含对象的地址信息
6、可以用this(参数)来调用其他的重载的构造器,且只能放在方法的第一句;例如一下代码:
public class Student {
private String name;
public Student() {
}
public Student(String name) {
this();
}
public Student(String name,String id) {
this(name);
}
}
7、注意以下的代码是不合法的,原因很简单,this在构造器中指向正在初始化的那个对象,那也就是说现在的这个对象还无法获取到“张三的常量池地址”,所以是错误的,除非“张三是个静态属性”
public Student() {
this("张三");
}