java - Java中的实例方法调用

标签 java

在 Java 中,对于每个对象,都会创建一个实例变量的新副本,可以使用对象引用来访问它。 但是在实例方法的情况下,只有它的一个副本(实例方法)存在。 各种对象引用如何访问此方法?

最佳答案

该方法的字节码(或 native 代码,如果它是 JIT 的)存储在一个位置。当调用该方法时,指向实例对象的指针(在幕后,也称为更高级别的引用)作为第一个参数传递,因此方法代码可以对该特定实例进行操作 - 可以访问其字段等。在为了在不增加性能成本的情况下节省空间,Java 中的调用机制比 C++ 复杂很多,尤其是接口(interface)方法。

关于java - Java中的实例方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1348337/

相关文章:

java - 使用Tritonus AudioSystem:将PCM byte []数组转换为mp3 byte []数组

java - 使用本地 jar 在 svn 中 checkin maven 项目

java - 使用 play2 自动重新加载

java - Tomcat 上的 JPA2 - 可能吗?

java - 将平均值从 lambda 流转换为整数

java - 数组越界并将 list<Object> 转换为 string[]

java - 如何从 Android 中的另一个应用程序启动 Activity

java - JavaCC/JJTree 节点类中缺少字段?

java - 从代码覆盖中排除枚举类?

java - 带有 Jython 的 Eclipse 不理解 Java 导入