我有下面的課程。java繼承最佳實踐?
public class BaseRequest {
protected List<Emp> names; // names property is required in many classes
}
public class FirstRequest extends BaseRequest {
public FirstRequest() {
names = new ArrayList<Emp>();
}
public setNames(List<Emp> names){
super.names = names;
}
public List<Emp> getNames(){
return super.names;
}
}
public class ServiceClass {
public void someMethod(List<Emp> emps) {
FirstRequest request = new FirstRequest();
request.setNames(emps);
//Some Logic
}
}
我是以正確的方式繼承嗎?我該如何進一步改進它?
謝謝!
使用'BaseRequest request = new FirstRequest();'而不是'ServiceClass'的'FirstRequest請求' –
@SantoshJoshi然後他需要在超類上聲明getter和setter,雖然它可能是抽象的和實現的他們。 – RamonBoza
爲什麼'Base'在'BaseRequest'中定義,但setter和getter以及'FirstRequest'中的初始化?這可能是有原因的,但除非有意,否則將該代碼移動到'BaseRequest'。 – Thomas