我认为该cleverly部分涉及这样一个事实,即引用类型通常称为a pointer,这使得读者需要学习两个术语.JVM术语只是使用了这个术语reference.
还有一个历史背景.
引入Java时,它最大的竞争对手是C++.C++的主要问题是它被认为太难了.Java最初将自己定位为C++ 的简单替代品.它的语法非常接近C++,但是从语言中删除了所有困难的东西(运算符重载,模板,多个传递机制)等.
现在抓住了......
Java最初的销售是因为没有指针.说这个的理由是指针被认为是C++中最难的东西,所以如果Java不具备它们,它必须是一种更简单的语言.
因此,聪明的部分来自简单地为"指针"发明另一个术语.称它们为引用,你可以声明Java没有指针(但引用).
这导致了很多争论并引起了很多混乱,特别是因为C++已经有了"引用"一词并将其用于其他东西(虽然在概念上有点相关).辩论通常围绕两个阵营,其中一个声称Java确实没有指针,因为你不能用它们做指针算法而且它们不直接代表内存地址,而另一个阵营说你没有能够使用指针进行算术运算,将其称为指针.
换句话说,使用该术语是否聪明reference仍然可以辩论.