2010-12-08 75 views
0

現有的類我有實現兩個方法的類(例如區):修改與GWT發電機

public Object getAtribute(String name) { 

} 
public void setAtribute(String name, Object value){ 

} 

一切都設置打電話給我時,發電機GWT.create(Dirstrict.class)被調用。

現在我要如何在同一類這些方法的實現(即寫在他們裏面的代碼),以便在區級的最終代碼會是這樣:

public Object getAtribute(String name) { 
    //The generated code 
} 
public void setAtribute(String name, Object value){ 
    //The generated code 
} 

感謝,

回答

1

你發生器不會改寫District類的實現,這將產生一個子類的District有不同的實現。生成的子類將由GWT.create(District.class)返回。

一旦生成了子類,它將被編譯爲JavaScript,並且如果從未使用原始超類的實現可能會被徹底刪除,所以效果將是相同的。

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> 

但首先你應該想想,如果你真的需要,因爲它使代碼更復雜,使用一臺發電機。