通常,我this仅在构造函数中使用。
我了解this.something,如果它与全局变量具有相同的名称,则它用于标识参数变量(使用)。
但是,我不知道thisJava 的真正含义是什么,如果this不使用点(.),将会发生什么。
this 指当前对象。
每个非静态方法都在对象的上下文中运行。因此,如果您有这样的课程:
public class MyThisTest {
private int a;
public MyThisTest() {
this(42); // calls the other constructor
}
public MyThisTest(int a) {
this.a = a; // assigns the value of the parameter a to the field of the same name
}
public void frobnicate() {
int a = 1;
System.out.println(a); // refers to the local variable a
System.out.println(this.a); // refers to the field a
System.out.println(this); // refers to this entire object
}
public String toString() {
return "MyThisTest a=" + a; // refers to the field a
}
}
然后调用frobnicate()上new MyThisTest()会打印
1个
42
MyThisTest a = 42
因此,有效地将它用于多种用途:
澄清您在谈论一个字段,当还有其他与该字段同名的东西时 整体引用当前对象 在构造函数中调用当前类的其他构造函数
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。