当前位置: 首页 > 知识库问答 >
问题:

在Java中地址和引用有什么区别?

都乐逸
2023-03-14

首先,我知道Java是按值调用的。

但是,在某篇文章中,Java中没有地址这样的东西,您应该使用reference这个词。在我看来,这两个词的释义是一样的。我错了吗?

>

  • 称呼和引用有什么区别,你有没有这么严格的定义,要把两者区别开来?

    我在各种网站上搜索过,但我找不到一篇文章可以回答我的问题,所以我发布了这个问题。谢谢你。

  • 共有1个答案

    濮俊美
    2023-03-14

    Java规范没有引入地址的定义,所以如果我们不讨论JVM实现,就没有这样的东西。

    如果我们深入研究,我们可以说地址和引用之间的差异是由GC引起的。特别是通过它重新定位对象的能力。

    假设内存中有对象O。它的地址是100500。在GC之后,所有指向O的引用仍将指向它,但是100500现在不在该对象所在的位置。

     类似资料:
    • 本文向大家介绍scriptPubKey和P2SH地址之间有什么区别?相关面试题,主要包含被问及scriptPubKey和P2SH地址之间有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 回答: 一个scriptPubKey在交易输出发现也被称为锁定脚本。 该P2SH地址是一种特殊类型的地址,即,它是用于其哈希代替复杂的锁定脚本。除了解锁脚本之外,事务还必须包含与哈希匹配的脚本。

    • 问题内容: 我有类GUI,因此可以创建如下对象: 和像这样的参考变量: 现在,据我所知,g2是引用GUI类的引用变量,而g1是GUI类的对象。g1和g2有什么区别?我可以将GUI类的属性与对象一起使用,但是g2的可能用法是什么? 问题答案: 参考是名称。对象就是东西。您可以为事物使用不同的名称,即使对于实际上不存在的事物也可以使用不同的名称。 您可以声明名称,而无需实际给它们任何“真实的”含义,例

    • 问题内容: 我只是想知道为什么我们通常在两个布尔之间使用逻辑OR 而不是按位OR ,尽管它们都运行良好。 我的意思是,请看以下内容: 我们可以代替使用吗?与和相同。 问题答案: 如果您使用和形式,而不是这些运算符的和形式,则Java不会费心地单独评估右手操作数。 这是您是否希望缩短评估时间的问题-在 大多数情况 下都是如此。 说明短路好处的一个好方法是考虑以下示例。 正如Jeremy和Peter提

    • 问题内容: 我在看一些模拟的OCJP问题。我遇到了一个非常令人困惑的语法。这里是: 为什么输出在和之间变化? 问题答案: 问题只是和您玩弄混乱的空格。 是通常的(不等于)比较。 另一方面: 最好写成如下形式: 因此,这是两个运算符。 首先反转。 然后将其分配回。 赋值运算符返回分配的值。因此,计算结果为true-这就是您要打印的内容。

    • 问题内容: 有调用任何区别和(包括性能差)? 问题答案: 唯一重要的是您是否使用例如

    • 问题内容: 在Java中ArrayList和LinkedList有什么区别?何时使用哪一个? 问题答案: 并且是接口的两种不同的实现。用双向链表实现它。用动态调整大小的数组实现它。 与标准的链表和数组操作一样,各种方法将具有不同的算法运行时。 对于 是O(n)(平均n/4步) 是O(1) 是O(n)(平均为n/4步),但是当(index = 0 —LinkedList 是O(n)(平均n / 4步

    • 问题内容: 我一直认为Java 中的运算符用于验证其两个布尔操作数是否均为,并且该&运算符用于对两种整数类型进行按位运算。 最近我知道,也可以使用运算符来验证其两个布尔操作数是否均为,唯一的区别是即使LHS操作数为false,它也会检查RHS操作数。 Java中的运算符是否在内部重载?还是在这背后有其他概念? 问题答案: <-验证两个操作数 <-停止评估第一个操作数是否为false,因为结果为fa

    • 问题内容: 斯威夫特有: 强引用 参考文献薄弱 无人参考 无主引用与弱引用有何不同? 什么时候可以使用无主引用安全? 无主引用是否像C / C ++中的悬空指针一样具有安全风险? 问题答案: 双方并引用不创建一个被引用的对象上保持(又名它们不会取消分配引用的对象增加,为了保留计数,以防止电弧)。 但是为什么要两个关键词呢?这种区别与类型内置在Swift语言中这一事实有关。长话短说:可选类型提供了内