java - 扩展类会增加内存吗?

标签 java jakarta-ee inheritance

在我尝试构建的应用程序中,我有一个实用程序类,我对其进行扩展以使用其中存在的实用程序方法。

@Repository("userdao")
public class UserDAO **extends baseDAO**{
    private float PROFILE_FIELD_COUNT=16.0f;
    List<UserProfile> ObjList=null;
...
...
...

我的问题是这个扩展会将所有方法加载到内存中吗?或者为基类实例化一个对象并通过该对象使用方法是否更好?就内存消耗而言,哪个是轻量级的?

最佳答案

扩展另一个类(例如有两个类)在实际内存使用1方面与创建两个都使用的不同类没有什么不同。同样,扩展树的“深度”不会影响实例的内存使用。

除了最有限的嵌入式环境之外,多个类的“内存成本”在所有环境中都是无关紧要的:编写最干净的成本。独立于子类型的选择(通过依赖注入(inject)和组合共享“实用方法”可能更好),试图将所有内容塞进单个“DAO 类”中可能是错误的。

<小时/>

1差异,请参阅 Java Objects Memory Structure并且取决于具体的实现。

关于java - 扩展类会增加内存吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25093645/

相关文章:

java - kill -退出: log not getting appended

java - 如何在 Web 应用程序中使用 java.util.logger?

java - JDBC getConnection超时问题

java - 需要帮助找出轻量级 Java EE 框架

java - 在 Swing JFrame 上添加/删除 JFXPanel

java - 在这种情况下如何声明和使用通用映射

java - VMware guest 中的 JVM 堆大小调整

c++ - 模板和继承

java 继承 - 我需要一个数组吗?

c++ - c++中私有(private)继承的目的