知识大全 编写代码生成器[6]

Posted

篇首语:四方食事,不过一碗人间烟火。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 编写代码生成器[6]相关的知识,希望对你有一定的参考价值。

Eclipse工具开发:编写代码生成器[6]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    ——此文章摘自《自己动手写开发工具 基于Eclipse的工具开发》定价 ¥  特价 ¥ 详细>>//track linktech cn/?m_id=dangdang&a_id=A &l= &l_type = width= height= border= nosave>

        private <%=className%>(String type)                     super();             this type = type;                 public int hashCode()                     final int PRIME = ;             int result = ;             result = PRIME * result + ((type == null) ? : type hashCode());             return result;                 public boolean equals(Object obj)                     if (this == obj)                 return true;             if (obj == null)                 return false;             if (getClass() != obj getClass())                 return false;             final <%=className%> other = (<%=className%>) obj;             if (type == null)                             if (other type != null)                     return false;             else if (!type equals(other type))                 return false;             return true;             

    这个模板文件是非常简单的 有了前面的基础 读懂这个模板文件就非常简单了 这里只讲两点     l   文件头的imports属性是用来定义生成的代码的import列表的 这个模板中用到了集合类Set 所以要用imports= java util * 将其导入 否则生成的代码会编译错误 如果要导入多个类 只要把它们用空格隔开即可 比如     imports= imports= java util * java sql Date     不能使用其他分隔符     l   由于传递进来的参数是一个JavaBean 因此需要把argument进行一次转型操作     EnumGenArgInfo argInfo = (EnumGenArgInfo)argument;     编写下面的代码测试一下这个代码模板     public static void main(String[] args)              EnumCodeGenerator gen = new EnumCodeGenerator();         EnumGenArgInfo argInfo = new EnumGenArgInfo();         argInfo setClassName( MyEnum );         Set<String> items = new HashSet<String>();         items add( VIP );         items add( MM );         argInfo setItems(items);         argInfo setPackageName( cownew );         System out println(gen generate(argInfo));          运行之后发现输出的代码完全正确     这样我们就可以来完成EnumCodeGenUtils类的getEnumSourceCode方法     【代码 】完成后的getEnumSourceCode方法     public static String getEnumSourceCode(String packageName String fileName             Set<String> itemDefSet)              Pattern pattern = Pattern pile( ( +) java );         Matcher mat = pattern matcher(fileName);         mat find();         String className = mat group( );         EnumCodeGenerator gen = new EnumCodeGenerator();         EnumGenArgInfo argInfo = new EnumGenArgInfo();         argInfo setClassName(className);         argInfo setItems(itemDefSet);         argInfo setPackageName(packageName);         return gen generate(argInfo);    

    这里用到了正则表达式来从Java文件名中提取类名 使用的是JDK中的正则表达式实现 对于正则表达式 我们可以去查阅相关资料 正则表达式是一个非常好用的工具 掌握以后能轻松解决很多字符串解析相关的问题 并为学习编译原理打下基础

cha138/Article/program/Java/ky/201311/29012

相关参考

知识大全 编写代码生成器[2]

Eclipse工具开发:编写代码生成器[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs

知识大全 编写代码生成器[5]

Eclipse工具开发:编写代码生成器[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs

知识大全 编写代码生成器[4]

Eclipse工具开发:编写代码生成器[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs

知识大全 编写代码生成器[3]

Eclipse工具开发:编写代码生成器[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs

知识大全 编写JScript代码

编写JScript代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  与其他许多编程语言一样Mi

知识大全 编写高级JavaScript代码

Java应用:编写高级JavaScript代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  创

知识大全 编写高级JavaScript应用代码[1]

Java应用:编写高级JavaScript应用代码[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 编写高级JavaScript应用代码[2]

Java应用:编写高级JavaScript应用代码[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 编写高级JavaScript应用代码[2]

Java进阶:编写高级JavaScript应用代码[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 编写高级JavaScript应用代码[1]

Java进阶:编写高级JavaScript应用代码[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下