假设我们的 Spring Boot 应用程序中有一个值对象。这是一个非常简单的 VO,具有两个字段、getter、setter 和一两个基本静态方法。需要另一个值对象,它目前具有相同的结构,但将来可能会有所不同。你会如何处理这种情况?
虽然它们在编程上是相同的,但它们应该用于应用程序的不同部分。我想为这两个对象的变化做好准备吗?制作两个相同的类听起来太基础了。欢迎提出任何问题或建议。
最佳答案
这听起来像是两个具有 IS A
关系的对象。
因此,您使用继承。
第二个对象扩展了第一个对象,因此第一个对象的所有字段都可用于第一个对象。
也许,您可以使用interface
创建另一个父类(super class)型,并将所有静态字段/方法移入其中。
类似这样的事情。
public class FirstObj {
private final String field1;
private final String field2;
public FirstObj(String field1, String field2) {
this.field1 = field1;
this.field2 = field2;
}
}
public class SecondObj extends FirstObj {
// Any future fields...
public SecondObj(String field1, String field2) {
super(field1, field2);
}
}
关于java - 您将如何处理将来可能不同的两个相同的值对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60384055/