1

我有以下 BO,它已经存在于系统中

public class userBO
{
    private String userId;
    private String password;
    private String firstName;
    private String midName;
    private String lastName;
    private String userType;
    private String userDepartment;
    private String userAuthority;

    //There are some more fields
    //getter and setter

}

现在我想建立一个下拉列表,我将在其中显示名称 (firstName + lastName) 并将使用 userId 作为值。因此,为此我将列出对象。

所以我的问题是我应该使用现有的 userBO 类还是应该创建类似下面的新类

public class userDropDwonBO
{
    private String userId;
    private String firstName;
    private String lastName;

    //getter and setter

}

我想从 Good Architect 的角度和性能的角度知道答案,如果我使用 new userDropDownBO 会有更好的性能吗

4

2 回答 2

2

userDropDownBOobject 肯定会比上面的类使用更少的内存。

这是因为您的所有成员都是私有实例变量,每次调用构造函数时,都会在堆栈上创建一组所有私有变量并将其初始化为其默认值,因此会消耗更多的内存和初始化时间。

但这完全取决于您的要求:

  1. 如果除了这三个字段之外还需要其他字段,请前往该userBO课程。
  2. 如果不需要其他字段,但要创建的对象数量不多,请选择userBO.
  3. 如果其他字段是不必要的,但要创建的对象数量不多,请选择userDropDownBO.

这是个人意见,休息是你的选择。

于 2013-10-21T06:51:42.257 回答
0

如果您要在现有的名为UserBO的类之外创建一个新类,只是为了将其绑定到 JComboBox,那肯定会浪费内存和时间,而且您还需要提供额外的逻辑将UserBO类型的原始对象映射到UserDropDownBO类型的对象。我想说您的方法可能适用于 BO 本身处理起来如此复杂的情况,因此您需要创建一个单独的模型以在下拉框中使用。

于 2013-10-21T07:02:04.077 回答