java - `this` 是 Java 中的指针吗?

标签 java pointers reference terminology

我读过Java中没有指针概念,但是我也多次读到this是Java中引用当前对象的关键字。我仍然对 this 是否可以作为指针调用或者它根本不是指针感到困惑。

如果它不是一个指针,它怎么能引用一个对象呢?它如何保留当前对象的引用?我读过对于 C++,this 是一个保存当前对象地址的指针。

最佳答案

是的,Java 中的每个对象类型变量实际上都是一个指针,但大多数时候我们称它为引用。它仍然是一个指针,因为如果它为 null 并且您取消引用它,您将得到一个 NullPointerException。

Java中有指针,但没有指针运算。例如,您不能像在 C 中那样递增指针。

此外:JavaScript 和 Java 是两种截然不同的语言。您的问题不应标记为 javascript。

关于java - `this` 是 Java 中的指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7778451/

相关文章:

java - 通过 IMDB API 对电影进行评级

java - 打印出用户指定长度的第一部分

c++ - 为什么 C++ 没有指向成员函数类型的指针?

C++ 常量引用语义?

java - 在 actionListener 中获取 JTextField 的引用

reference - 按引用而不是按值复制文件夹?

java - 图片不可见水印

java - 如何避免在 Android(或任何 Java)项目中包含未使用的库?

c++ - 为什么静态成员指针在 ELF 部分为零?

c - 如何为自引用结构类型的对象的成员赋值?