this关键字
- this是一个关键字
- this出现在实例方法中,代表当前对象。语法是:this.
- this本质上是一个引用,该引用保存当前对象的内存地址
- 通过this. 可以访问实例变量,可以调用实例方法
- this存储在:栈帧的局部变量表的第0个槽位上
- this.大部分情况下可以省略,用于区分局部变量和实例变量时不能省略
- this不能出现在静态方法中
- “this(实参)” 语法:
- 只能出席拿在构造方法的第一行
- 只能通过当前构造方法去调用本类中其他的构造方法
- 作用是:代码复用
演示代码
Vip.java
package chapter3.oop11;
public class Vip {
private String name;
public Vip(String name) {
this.name = name;
}
public Vip() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void shopping(){
System.out.println(this.name + "在购物");
System.out.println(this);
}
public static void test(){
Vip.test2();
test2();
Vip vip = new Vip();
System.out.println(vip.name);
vip.shopping();
}
public static void test2(){
}
}
VipTest.java
package chapter3.oop11;
public class VipTest01 {
public static void main(String[] args) {
Vip momo = new Vip("漠漠");
System.out.println(momo);
momo.shopping();
System.out.println("==============");
Vip lisi = new Vip("李四");
System.out.println(lisi);
lisi.shopping();
}
}
Test.java
package chapter3.oop11;
public class Test {
int age = 10;
public static void main(String[] args) {
Test test = new Test();
test.main("hello world");
}
public void main(String s){
System.out.println(this);
System.out.println(age);
}
}