Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java—使用';这';在方法的括号内_Java_This - Fatal编程技术网

java—使用';这';在方法的括号内

java—使用';这';在方法的括号内,java,this,Java,This,为什么要在括号中使用“this”?是用来打印参考资料的吗?或者,如果对象指向同一个引用,则按照下面的代码进行比较 System.out.println(this); 主要方法代码 public void compareDrzewo(Drzewo tree) { if (tree == this) { System.out.println("true"); } else { System.out.println("false"); } 使用“this.”的其他示例非常简单(内部类等),请

为什么要在括号中使用“this”?是用来打印参考资料的吗?或者,如果对象指向同一个引用,则按照下面的代码进行比较

System.out.println(this);
主要方法代码

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

使用“this.”的其他示例非常简单(内部类等),请仅对此或类似用法发表评论。

该实例有一个与之关联的
toString()
方法,这意味着它将调用它来打印有意义的信息,或者它使用
对象
toString()
(这意味着它将打印出一个内存位置,而内存位置的用处要小得多)。

System.out.println(this)

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


因此,如果
this
是一个实例的类重写了
toString
方法,那么这行代码将是有意义的。

使用
this
引用当前对象

例如,当您希望引用类的当前实例时,如果您需要调用类的方法,例如
something.equals(this)
something==this

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

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

因此,
myVar
是在方法中声明的变量,
this.myVar
是在类中声明的变量。

-第一段应该解释它。甚至
System.out.println(toString())
public void setMyVar(String myVar) {
    this.myVar = myVar;
}