SSH框架采用的技术:xml配置文件+反射技术。
反射主要是解决动态编程的问题,所有的对象都是动态生成的,调用的方法也是动态的,反射可以简化开发,但是代码的可读性很低。--反射有关的类包为java.lang.reflect.*和java.lang.Class
获得Class对象方法包括:
a.每一个对象.getClass(),可以得到对应的Class
b.Class.forName(String) 其中String的写法:为包名.类名--就会创建对应的那个对象
上面两种只适用于引用类型
c.针对基本类型:封装类.TYPE代表了对应的基本类型的Class对象 例Integer.TYPE对应的是int的Class对象
d.类型.Class是通用的
以上的4种方法,只有方法b是动态的,只要换一个包就可以了,具有动态的潜质,所以真正意义的想体现动态编程只能使用方法2
//对与引用类型
Class c1 = "".getClass();
Class c2 = Class.forName("java.lang.String");
Class c3 = String.class;
System.out.println(c1 ==c2);//true
//对于基本类型
Class num1 = Integer.TYPE;
Class num2 = int.class;
System.out.println(num1 == num2);//true