Topic: 这个问题不知道是否还有人关心(关于运行期创建类)

  Print this page

1.这个问题不知道是否还有人关心(关于运行期创建类) Copy to clipboard
Posted by: xiaoyun
Posted on: 2005-02-06 14:31

http://www.cjsdn.com/post/view?bid=1&id=23374&sty=0&tpg=100&ppg=1&age=0

现在解决方案如下,速成“执行代码不落地”方式,呵呵。

    ClassPool pool = ClassPool.getDefault();
    CtClass cc = pool.makeClass("Sample"+System.currentTimeMillis()) ;
    CtMethod cm ;
    cm = CtNewMethod.make( "public static void main(String[] args) { System.out.println( \"This class is created in runtime\" ) ;}" , cc );
    cc.addMethod( cm ) ;
    Class realClass = cc.toClass() ;
   Method main = realClass.getMethods()[0];
   main.invoke( null , new Object[]{null} );

2.Re:这个问题不知道是否还有人关心(关于运行期创建类) [Re: xiaoyun] Copy to clipboard
Posted by: jigsaw
Posted on: 2005-02-09 23:26

hmm...javassist....interesting~ thx

3.Re:这个问题不知道是否还有人关心(关于运行期创建类) [Re: xiaoyun] Copy to clipboard
Posted by: longluck
Posted on: 2005-02-16 16:38

这个太简单!没什么可炫耀的


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923