如何從內部靜態類擴展生成的類?使用代碼模型擴展內部類
舉例來說,我有
class Foo {
static class Bar {
}
}
而且我想我生成的類從酒吧
延長JCodeModel codeModel = new JCodeModel()
JClass aClass = codeModel.ref("somePckg.Foo$Bar")
JPackage jp = codeModel._package("pckag")
JDefinedClass jc = jp._class("GeneratedClass")
jc._extends(aClass)
codeModel.build(new File("generated/"))
我得到的是
import somePckg.Foo$Bar;
public class GeneratedClass extends Foo$Bar {}
但我要的是
import somePckg.Foo;
public class GeneratedClass extends Foo.Bar {}
解決方案:
你應該把類名是這樣的:
codeModel.ref("android.support.v7.widget.RecyclerView.ViewHolder")
而且CodeModel將您正在使用什麼版本codemodel的產生
package pckg;
import somePckg.Foo.Bar;
public class GeneratedClass extends Bar {
}
你可能需要進口或者導入靜態Foo。* –