易截截图软件、单文件、免安装、纯绿色、仅160KB

JAVA 中将字符串转换成类实例对象

在很多时候我们需要将一个给了完整路径的类对象字符串转换成一个类的实例对象,就比如说有以下这样的一个字符串
String  menAction= "gef.putin.step.ui.SystemMenuTest(xiajiaji)"在该类中需要有有一个字符串格式的参数,当然多个参数也可以,我已经将多个参数的考虑进去,对改字符串进行解析就可以转换成类的实例对象了。以下是我做的一个小的Demo,如果能够帮助大家,我当然觉得很开心,希望对大家有帮助。
import java.lang.reflect.Constructor;
public class Test {
 public static void main(String [] args){
  String menuAction = "gef.putin.step.ui.SystemMenuTest(xiajiaji)";
  boolean endsWith = menuAction.endsWith(")");
  SystemMenuTest action =null;
  if(!endsWith){
  try{
   action = (SystemMenuTest) Class.forName(menuAction).newInstance();
  }catch(Exception ee){
   ee.printStackTrace();
  }
  }else{
   String clazzName = menuAction.substring(0, menuAction.indexOf("("));
   String parAllStr =  menuAction.substring(menuAction.indexOf("(")+1, menuAction.indexOf(")"));
   boolean contains = parAllStr.contains(",");
   String [] parStr = null;
   if(contains){
    parStr = parAllStr.split(",");
   }else{
    parStr = new String[]{parAllStr};
   }
   try{
    Class clazz = Class.forName(clazzName);
    Class [] parClass = new Class[parStr.length];
    for(int i =0;i<parStr.length;i++){
     parClass [i] = String.class;
    }
    Constructor con=clazz.getConstructor(parClass);
    action = (SystemMenuTest) con.newInstance(parStr);
   }catch(Exception exe){
    exe.printStackTrace();
   }
&nbs


相关文档:

Java设计模式之:Iterator链表模式

先来了解一下链表模式的原理:
首先写一个JavaBean,内容是要添加的元素和该元素的节点。
public class NodeBean implements Serializable
{
   
    private Object data; //元素本身
    private NodeBean next; //下一个节点
   
  &n ......

java面试题,质数求和

public class Test {
 /**
  * @param args
  */
 public static void main(String[] args) {
  /**
   * 求质数和,
   * 如:
   * sum(1)=2=2
   * sum(2)=2+3=5
   * sum(3)=2+3+5=10
   * sum(4)=2+3+5+7=17
& ......

传智播客Java培训 HTML基础示例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>实例1</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME=" ......

Java与C++的多态

没有必要用一堆绕口的形容词来描述什么叫多态,只举出几个关键点。
    设:gun为父类,shootgun和pistol为gun的子类。
    Java:
    class gun {
        void shoot() {
          ......

传智播客java培训ORACLE总结(3)


 
ORACLE的学习已经告一段茖,今天已经开始HIBERNATE的学习,总体感觉挺良好的,虽然很多的知识不能记住,但是在使用的时候能够迅速的找对方法来解决相应的问题,只要勤加练习,就可以记住。只不过,时间有珢,HIBERNATE的课程也只有三天的时间,所以在这期间我的任务是尽量吸引,在花放假的时候来复习 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号