有一个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来存储数据。
我怎样才能获得这些字段的值。
请提出一些建议......
答案 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.
}