java - 使用'这个'在方法的括号内

时间:2013-03-27 22:56:52

标签: java this

System.out.println(this);

为什么要在括号中使用'this'?是用于打印参考文献吗?或者在下面的代码中用于比较对象是否指向相同的引用?

public void compareDrzewo(Drzewo tree) 
{ if (tree == this) 
{ System.out.println("true"); } 
else { System.out.println("false"); }

主要方法代码

Drzewo name1 = name2;
name1.compareDrzewo(name2);

使用'this'的其他例子。非常直接(内部班级等)请仅评论此类或类似用途。

3 个答案:

答案 0 :(得分:2)

该实例有一个toString()方法与之关联,这意味着它会调用它来打印出有意义的信息,或者它使用Object的{​​{1}}(意味着它会打印出来)出一个内存位置,这个位置实用得少得多。)

答案 1 :(得分:2)

System.out.println(this)

相同

System.out.println(this.toString());

因此,如果this是一个实例的类会覆盖toString方法,那么这行代码就会有意义。

答案 2 :(得分:0)

您使用this来引用当前对象。

一个示例是当您想要引用课程的当前实例时,如果您需要使用您的课程调用方法,例如something.equals(this)something == this

另一个例子是显式指定变量的类实例而不是本地实例,例如setter:

public void setMyVar(String myVar) {
    this.myVar = myVar;
}

因此myVar是方法中声明的变量,this.myVar是您班级中声明的变量。