我有下面的课程。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