有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java针对并非总是使用所有属性的对象的最佳实践

以下是我的设想:

我有一个具有10个属性(例如名称、生日等)的对象。我在JSFWeb应用程序的两个单独页面上使用该对象。在一个页面上,我只会使用其中的5个属性,而在另一个页面上,我可能会使用所有10个属性。构建对象的最佳实践/最有效的方法是什么?我只有一个目标吗?我是否有一个对象用于第一个页面,另一个对象用于扩展第一个对象的第二个页面?或者每个页面都有一个扩展基本对象的对象


共 (4) 个答案

  1. # 1 楼答案

    作为所有面向对象代码中的一般规则:

    如果类A在各个方面都像类B,但有一些额外的位;A类应扩展至B类

    如果类A和类B是相似的,但它们都没有被彼此完全封装,那么它们都应该扩展一些基类

    我想你处于第一种情况

  2. # 2 楼答案

    理想情况下,如果页面不同,您应该使用两个不同的类,因为在未来,您可能不再具有任何公共属性

    话虽如此,如果您使用公共数据跨页面使用它(可能还将其存储在会话中),那么我建议您使用单个对象,并在页面上使用适当数量的属性。 这是基于这样的假设,即两个页面上的公共值相同

  3. # 3 楼答案

    我处理这个问题的方法如下:

    package com.model  
    public class MyClass  
    {  
        //all 10 properties with getters and setters  
    }   
    

    ui支持类的单独包

    package com.ui.backing  
    public class FiveProperties  
    {  
         private MyClass myClass;  
         //use the 5 properties here  
    }      
    
    public class TenProperties  
    {  
         private MyClass myClass;  
         //use the 10 properties here  
    }  
    

    这样做的好处是,应用程序中的每个页面都有一组您需要的特定属性作为支持。它还使页面具有特定的逻辑,而不是到处复制代码

  4. # 4 楼答案

    我不会太在意这些属性,我会更多地考虑这个类

    这个类代表一个原子,对吗?听起来像是一个人

    事实上,在某些情况下,你只使用了一些属性,那又怎样

    上半人制的课是没有意义的

    所以对我来说,关键是你们班的“原子性”。如果描述的是一个单一的、合乎逻辑的东西,那么为什么要进一步拆分它呢