站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题如何实例化一个抽象类

如何实例化一个抽象类

摘要: 如何实例化一个抽象类
<table cellSpacing=0 cellPadding=0 border=0 class="zh114" align="right"> <tr> <td > </td> </tr> </table>
  抽象类就一定不可以实例化吗?
  看下面的例子:
  public abstract class YourClassName
  {
      public abstract Object someMethod(...);
  }
  在你要有的地方
  
  YourClassName ycn = (YourClassName) java.lang.reflect.Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), new Class[]{YourClassName.class},new java.lang.reflect.
      InvocationHandler(){
          public Object invoke(Object proxy,Method m,Object params[]) throws Exception{return null;}
      });
  
  只是这个实例没有任何用处,他所有的方法都直接返回
  
  如果要使不是abstract的方法和原来的一样,那么修改invoke函数,判断m是不是抽象的不是就调用proxy中的方法(m.invoke(proxy,params))如果是就返回null

<table width="96%"> <tr> <td background="http:///images/dian.gif" height="3"></td> </tr> </table>

↑返回目录
前一篇: 避免使用finalizer()函数
后一篇: JAVA中用动态代理类实现记忆功能(一)