在 Java 中是否可以将引用分配给"this"?
javaobject oriented programmingprogramming更新于 2024/7/29 16:00:00
Java 中的"this"关键字用作对当前对象的引用,在实例方法或构造函数中。使用它,您可以引用类的成员,例如构造函数、变量和方法。
将引用赋给 "this"
根据定义 "this" ,它是一个关键字,充当对当前对象(您正在从其构造函数/方法使用它的对象)的引用,其值 id 是固定的。因此,您不能为其分配新的引用值。此外,它只是一个关键字,而不是变量。
不过,如果您尝试将引用值赋给 "this",则会导致编译错误。
示例
在下面的 Java 程序中,类 (ExampleClass) 有两个私有变量 name、age 和一个实例化这些变量的参数化构造函数。从名为 display 的方法中,我们尝试为 "this"分配一个新值。
public class ExampleClass { private String name; private int age; public ExampleClass(String name, int age){ this.name = name; this.age = age; } public void display(){ this = new ExampleClass("krishna", 23); } }
编译时错误
在编译时,此程序会给出如下所示的错误 −
ExampleClass.java:14: error: cannot assign a value to final variable this this = new ExampleClass("krishna", 23); ^ 1 error