我有一个实现两个方法的类(例如District):
public Object getAtribute(String name) {
}
public void setAtribute(String name, Object value){
}
当调用GWT.create(Dirstrict.class)时,一切都设置为调用我的Generator。
现在我如何在同一个类中修改这些方法的实现(即在其中编写代码),以便区类中的最终代码如下:
public Object getAtribute(String name) {
//The generated code
}
public void setAtribute(String name, Object value){
//The generated code
}
谢谢,
答案 0 :(得分:1)
您的生成器不会重写 District
类的实现,它将生成District
的子类实现。生成的子类是GWT.create(District.class)
将返回的内容。
一旦编写了生成的子类,它就会被编译成JavaScript,如果它从未被使用过,你的原始超类实现可能会被彻底删除,所以效果会相同。
答案 1 :(得分:0)
您必须创建一个扩展com.google.gwt.core.ext.Generator的生成器类,并告诉gwt编译器使用您的生成器来生成District类。
your.gwt.xml
<generate-with class="my.package.DistrictGenerator">
<when-type-assignable
class="my.package.District"/>
</generate-with>
但首先你要考虑是否真的需要使用生成器,因为它会使代码更复杂。