【发布时间】:2013-05-05 03:55:06
【问题描述】:
我有一个想法,但无法弄清楚如何实现。
public class BaseDomain<T>{
//Generic methods goes here
}
public class Domain1 extends BaseDomain<Domain1>{
private int id;
private String name;
//only properties should be present here
}
public class Domain2 extends BaseDomain<Domain2>{
private int id;
private String name;
//only properties should be present here
}
在上述场景中,我可以轻松地在基类中定义所有泛型方法,并且可以通过使用泛型在我的所有域类中使用。但是我的问题是我想设计一个机制,开发人员必须通过它只定义域类中的属性(没有 getter/setter)但是 BaseDomain 应该以某种方式提供 动态获取每个域的 getter/setter。
任何建议都非常感谢!
【问题讨论】:
-
查看依赖注入框架
-
“属性”是指“字段”吗?
-
@Joh....是的,我的意思是字段
-
另一种方法呢:提供方法
Object get(String name)void set(String name, Object value)。对于开发人员:get("id")get("name")set("id", 5)set("name", "john")。如果你愿意,我会给你一个实现。 -
开发人员必须记住这种方法中的所有字段名称,并且只能在运行时捕获任何错误。