在jvm中,函数被加载到方法区域,该区域在类加载时初始化,堆中的对象调用这些函数以提高性能。 encapsulation是数据成员和成员函数的绑定。在这种情况下,我没有看到对象级别的封装。
此外,如果一个类有数千个实例,可以一次又一次地共享相同的功能,因为该功能可以被视为各种对象共享的资源。
请澄清。
答案 0 :(得分:0)
函数被加载到方法区域,该区域在类加载时间
初始化
Java没有函数,它只有始终与类关联的方法。如何加载这些方法取决于JVM。在HotSpot JVM中,可以在JVM的整个生命周期内多次优化和重建方法。
你不应该混淆一个类中的静态变量的初始化,这可以在不同的时间以不同的方式操作方法的代码。
encapsulation是数据成员和成员函数的绑定。
我不同意。在面向对象的编程中,封装是隐藏实现细节。对象上方法的调用者不需要知道如何实现该方法或使用哪些字段。
可以一次又一次地共享相同的功能,因为该功能可以被视为各种对象共享的资源。
方法是只读的,因此它们可以有任意数量的副本而且没有问题。因此,它们不是资源争用的来源。
方法和实例数据成员没有像在类
中那样绑定在一起
他们的确切方式并不重要。您需要知道的是,Object有一个类,该类有方法。任何数量的对象都可以具有相同的类,而不会影响性能。 (除了内存不足的可能性)