“this”在java中是什么意思?

bbuxkriu  于 2021-06-27  发布在  Java
关注(0)|答案(17)|浏览(773)

通常,我用 this 仅在构造函数中。
我知道它是用来识别参数变量的(通过使用 this.something ),如果它与全局变量同名。
但是,我不知道这句话的真正含义是什么 this 如果我使用 this 无圆点( . ).

bbmckpt7

bbmckpt716#

谷歌的快速搜索结果如下:http://xahlee.org/java-a-day/this.html
几乎“this”关键字是对当前对象(本身)的引用。

wooyq4lh

wooyq4lh17#

对象具有从类派生的方法和属性(变量),以便指定哪些方法和变量属于特定对象 this 使用保留字。对于示例变量,理解隐式参数和显式参数之间的差异非常重要。看一看这个 fillTank 呼吁 audi 对象。

Car audi= new Car();

audi.fillTank(5); // 5 is the explicit parameter and the car object is the implicit parameter

括号中的值是隐式参数,而对象本身是显式参数,没有显式参数的方法使用隐式参数 fillTank 方法既有显式参数也有隐式参数。
让我们仔细看看 fillTank 中的方法 Car

public class Car()
{
   private double tank;

   public Car()
   {
      tank = 0;
   }

   public void fillTank(double gallons)
   {
      tank = tank + gallons;
   }

}

在这个类中,我们有一个示例变量“tank”。可能有许多对象使用tank示例变量,为了指定示例变量“tank”用于特定对象,在我们前面构建的“audi”对象中,我们使用 this 保留关键字。对于示例变量,在方法中使用“this”表示示例变量(在我们的例子中是“tank”)是隐式参数的示例变量。
java编译器会自动添加 this 保留字,所以你不必添加它,这是一个偏好的问题。你不能使用 this 因为这是java的规则(语法)。
总而言之。
对象由类定义,并具有方法和变量
使用 this 在方法中的示例变量上,表示示例变量属于隐式参数,或者它是隐式参数的示例变量。
隐式参数是调用方法的对象,在本例中是“audi”。
java编译器会自动添加这个保留字,添加它是一个优先事项 this 不能在没有点(.)的情况下使用这在语法上是无效的 this 也可用于区分具有相同名称的局部变量和全局变量
这个 this 保留字也适用于方法,表示方法属于特定对象。

相关问题