相关疑难解决方法(0)

内存中的方法表示是什么?

在思考Java/C#中的编程时,我想知道如何在内存中表示属于对象的方法,以及这个事实如何涉及多线程.

  1. 是单独为内存中的每个对象实例化的方法,还是同一类型的所有对象共享方法的一个实例?
  2. 如果是后者,执行线程如何知道要使用哪个对象的属性?
  3. 是否可以在C#中使用反射修改方法的代码,并且只能修改同一类型的多个对象中的一个对象?
  4. 一个不使用类属性的静态方法总是线程安全吗?

我试着对这些问题下定决心,但我对他们的答案非常不确定.

c# java memory clr jvm

22
推荐指数
2
解决办法
2838
查看次数

如何存储实例方法

可能重复:
内存中的Java/C#方法表示

我想知道我是否在java中有一个对象,它是如何存储实例方法的?对象是否有指向它的实例方法的指针?

例:

public class MyObject {
 private int x;
 private int y;
 [..]
}
Run Code Online (Sandbox Code Playgroud)

如果我计划MyObject在内存中保留很多(例如,对象的一棵大树),如果除了x的getter和yi定义计算总和的实例方法,它会在内存方面产生显着差异吗?

我正在尝试解决问题,我应该添加更多实例方法或使用getter和setter在另一个类中进行计算.

java memory

14
推荐指数
3
解决办法
9298
查看次数

标签 统计

java ×2

memory ×2

c# ×1

clr ×1

jvm ×1