方法不可用

时间:2011-03-31 11:32:31

标签: java methods

有一个CustomerData类,它包含各个字段和这些字段的set / get方法。

class CustomerData{

 int ssn;
 int homePhone; 
 int officePhone;
 String product;
 String sameAsPrev=null;
 // set/get methods
}

我需要用Customer类替换这个类。 Customer类位于jar文件中。因此我无法修改。 CustomerData的某些字段在Customer类中不可用,我需要在Customer Object上调用这些字段。

有一个限制,我不能添加任何类,只是用Customer替换CustomerData类。

在Controller中调用set方法后,他们使用map来存储数据。

我怎样才能获得这些字段的值。

请提出一些建议......

1 个答案:

答案 0 :(得分:0)

如果您的类中但不属于Customer类的字段是必填字段,那么您有两个选项: 选项1(isa,extends) 与您的班级一起扩展Customer课程。

public class CustomerDescendant
extends Customer
{
  ... stuff goes here
}

选项2(hasa,包含): 包含班级中的Customer类。

public class CustomerWrapper
{
  private Customer customerInstance;

  ... stuff

  getFieldInCustomerClass()
  {
    return customerInstance.getFieldInQuestion();
  }

  ... stuff
}

选项3(奖金选项): 创建一个包含所需字段的类,但不在Customer类中。


public class FieldsNotInCustomerClass
{
  ... all fields that are not in the customer class, but which are required.
}