java_7_反射实例

2018-02-03  本文已影响68人  果芽软件
package com.guoyasoft.reflect;

public interface IDao {
    public void insert();
}
package com.guoyasoft.reflect;

public class School implements IDao{

    @Override
    public void insert() {
        // TODO Auto-generated method stub
        System.out.println("新增学校成功");
    }
}

package com.guoyasoft.reflect;

public class Student implements IDao{
    @Override
    public void insert() {
        System.out.println("新增学生成功");
    }
}

package com.guoyasoft.reflect;

public class Teacher implements IDao{
public void insert(){
    System.out.println("新增老师成功");
}
}

package com.guoyasoft.reflect;

import java.lang.reflect.Constructor;
import java.util.HashMap;

public class Test {
    public static void main(String[] args) throws Exception {
        Test t=new Test();
        t.http();
        Student s=new Student("guoya",100);
        System.out.println(s.name+","+s.age);
    }
    
    
    public void http() throws Exception{
        String url="http://127.0.0.1:8080/web/003?name=xxx&age=xxx";
        String urlPathern=url.substring(26,29);
        System.out.println(urlPathern);

        Test t=new Test();
        t.doGet(urlPathern);
    }
    
    public void doGet(String urlPathern) throws Exception{
        HashMap<String,String> maps=new HashMap<String,String> ();
        maps.put("001", "com.guoyasoft.reflect.Student");
        maps.put("002", "com.guoyasoft.reflect.Teacher");
        maps.put("003", "com.guoyasoft.reflect.School");
        
        String className=maps.get(urlPathern);
        Class c=Class.forName(className);
        
        Constructor con=c.getConstructor(null);
        IIterface obj=(IIterface)con.newInstance(null);
                
        obj.insert();       
    }
}

上一篇 下一篇

猜你喜欢

热点阅读