java - 什么是本地对等体?

标签 java terminology

Native peer在Effective Java(2nd)中定义如下

A second legitimate use of finalizers concerns objects with native peers. A native peer is a native object to which a normal object delegates via native methods. Because a native peer is not a normal object, the garbage collector doesn’t know about it and can’t reclaim it when its Java peer is reclaimed.

在另一个问题中用例子解释了java peer。是 java 类 PrintHello 还是另一个使用 PrintHello 的类?

这里哪个部分被称为本地对等点,哪个部分是 Java 对等点,有什么例子吗?我了解 finalize 的用法,我只是对引用的 native 对等部分感到困惑。

最佳答案

native 对象不仅可以用 java 编程,还可以用特定于平台的语言(通常是 c 或汇编语言)编程。

这段代码分配的内存不能被 GC 释放。因此,您可能需要在终结器中对其进行清理。

native 对等点是 Java 对象的 native 部分。

你可以在这里看到一个很好的例子: https://www.javaworld.com/article/2077520/learn-java/java-tip-23--write-native-methods.html

关于java - 什么是本地对等体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48260485/

相关文章:

java - 模型和 DTO 之间映射对象时出现的问题

c# - MSDN文字说明——引用类型是对象

java - 对 Java 中的拆分感到困惑

java - 使用 SwingUtilities.invokeLater() 更新文本字段

java - 如何从 cookie 中删除 JSESSIONID?

terminology - 什么是垫片?

c++ - C++语言律师白话词典

javascript - 在自己的行中纠正数组函数的术语

language-agnostic - 柯里化(Currying)和部分应用有什么区别?

java - 如何使一些 Action 依赖于另一个 Action 的完成?