在JavaScript程序中整合Java函数 - 编程入门网
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-06-22
***********************************************/ if(s1.endsWith(";")) s1 = s1.substring(0, s1.length() - 1).trim(); /***************************************************************************** * 如果s1的长度大于零,并且第一个字符不为#和//,则调用processLine处理这一行参数 ******************************************************************************/ if(s1.length() > 0 && s1.charAt(0) != ''#'' && !s1.startsWith("//")) processLine(s1); } bufferedreader.close(); return; } catch(Exception _ex) { return; } } private void processLine(String s) { /************************************************************************** *取得这一行中第一次出现等号的下标值,如果没出现等号则返回-1 *如果没有等号,则输出错误信息 **************************************************************************/ int i = s.indexOf("="); if(i <= 0 || i == s.length() - 1) { System.out.println("不能处理此行信息: " + s); return; } String s1 = s.substring(0, i).trim();//s1为s中等号前的字符串 String s2 = s.substring(i + 1).trim();//s2为s中等号后的字符串 if(s2.startsWith("new "))//判断s2是否以new开头,如new class_name(list_of_parameters); s2 = s2.substring("new".length()).trim(); if(s1.length() == 0 || s2.length() == 0) { System.out.println("不能处理此行信息: " + s); return; } if(inst.get(s1) != null) file://为了防止重复定义类名 { System.out.println("重复命名 " + s1); return; } i = s2.indexOf("("); if(i <= 0 && !s2.endsWith(")")) { System.out.println("不能处理此行信息:" + s); return; } String s3 = s2.substring(0, i).trim();//s3为新定义的类名 s2 = s2.substring(i + 1, s2.length() - 1).trim();//s2为参数列表 if(inst.size() < 5) processLine1(s1, s3, s2, s); } private String prepareString(String s) { if(s == null) return null; if(s.length() < 2) return s; if(s.charAt(0) == ''"'' && s.charAt(s.length() - 1) == ''"'') file://如果字符串s以"开头,又以"结尾,则把两头的"去掉 return s.substring(1, s.length() - 1); if(s.startsWith("''") && s.endsWith("''"))//如果字符串s以''开头,又以''结尾,则把两头的"去掉 return s.substring(1, s.length() - 1); else return s; } private boolean processLine1(String s, String s1, String s2, String s3) { file://创建一个Object类的实例 Object obj[] = { null, null }; Class class1; if((class1 = (Class)cls.get(s1)) == null) try { class1 = Class.forName(s1);//返回具有s1指定的类名的类的Class描述符 cls.put(s1, class1); file://放回哈西表 } catch(Exception _ex) { System.out.println("不能装载类 " + s1); return false; } obj[0] = class1; if(s2.length() == 0) { try { obj[1] = class1.newInstance();// 创建类的新实例 } catch(NoSuchMethodError _ex) { System.out.println("不能创建对象的实例 " + s3); return false; } catch(Exception _ex) { System.out.println("不能创建对象的实例 " + s3); return false; } inst.put(s, ((Object) (obj))); } else { Object obj |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于在JavaScript程序中整合Java函数 - 编程入门网的所有评论