快速业务通道

Classworking工具箱: 分析泛型数据结构 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
EmptySignatureVisitor() {            public void visitClassType(String name) {              m_upperBounds.set(m_upperBounds.size()-1,                m_typeDirectory.getTypeInstance("L" + name + '';''));              m_isBounded = true;            }          };        }        public SignatureVisitor visitInterfaceBound() {          return new EmptySignatureVisitor() {            public void visitClassType(String name) {              if (!m_isBounded) {                m_upperBounds.set(m_upperBounds.size()-1,                  m_typeDirectory.getTypeInstance(name));              }            }          };        }      }    }    /**     * Parameterized type description, with actual types substituted for  all     * type parameters. The actual substitution of type parameters into  the     * fields is done at the time of first use to avoid issues with      * recursive class references.     */    private class ParameterizedClassDescription extends TypeDescription    {      private final TypeDescription[] m_types;      private final String m_name;      private FieldDescription[] m_fields;      /**       * Constructor. This creates the description for a parameterized  type       * with type substitutions from the generic instance. This has to  add       * itself to the type directory during construction to handle       * recursive references.       *       * @param sig signature including all type substitutions       * @param types actual types used for instance (values may be       * <code>null</code> if no substitution defined)       * @return substituted type description       */      public ParameterizedClassDescription(String sig, TypeDescription[] types)  {        super(sig);        StringBuffer buff = new StringBuffer();        buff.append(m_baseName);        buff.append(''<'');        for (int i = 0; i < types.length; i++) {          if (i > 0) {            buff.append('','');          }          if (types[i] == null) {            buff.append(''*'');          } else {            buff.append(types[i]);          }        }        buff.append(''>'');        m_name = buff.toString();        m_types = types;        m_typeDirectory.addType(this);      }      public FieldDescription[] getFields() {        if (m_fields == null) {          // make sure the number of parameter types is correct          if (m_typeParameter

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号