主要目的是爲了避免與現有的東西,最好的繼承模型領域的重複:什麼是給定的例子最好的繼承模型
我有下面的類層次結構:
class A
{
private String fieldA1;
private String fieldA2
// getters and setters
}
Class B extends A
{
private String fieldB1;
private String fieldB2;
// getters and setters
}
「用戶」類將擴展A或B並擁有自己的字段。
假設現有API在數據模型上面的使用。 現在需要在A類中爲新的API集添加新字段。 我有一定的限制,不要修改現有的數據模型,因爲它暴露或破壞現有的API與這些新的領域。因此,需要通過擴展現有數據模型來創建新的數據模型,以便新的API將其與所有現有字段+新字段一起使用。我有下面的解決方案,這可能不是最好的方法,因爲它增加了字段的重複。
class A
{
private String fieldA1;
private String fieldA2
// getters and setters
}
Class B extends A implements Common
{
private String fieldB1;
private String fieldB2;
// getters and setters
}
Class NewA extends A
{
private String fieldNewA;
// getters and setters
}
Class NewB extends NewA implements Common
{
private String fieldB1;
private String fieldB2;
private String fieldNewB;
// getters and setters
}
Interface Common
{
//marker interface
}
請建議是否有更好的方法。
謝謝...
小調:'私人領域'不會被繼承。現在,我假設你會創建getter和setter,但考慮讓它們成爲'protected'。 – user949300
是的,有getter和setter。更新了問題。 – user2523794