这是软件设计当中的术语工厂反射,设计模式当中会有介绍。
工厂模式 就是类似像工厂生产东西一样的意思。只需得到出厂的东西,具体怎么生产就不知道工厂反射了。
拿程序来说就是自己定义一个类,这个类当中会有很多方法,而这些方法就是创建对象的作用,用这个类的人只需知道调用哪个方法得到哪个具体对象,至于怎么得到就不用管了。
反射机制其实也很简单,就是一个类,可以利用反射机制得到自己有多少个方法,属性,方法名等等,这时候就可以判断这个类有无这个属性。或这个方法。
从而调用该方法。
缓存机制的话主要作用就是缓存一些数据喽。在这里不知道他到底有什么作用。
但缓存机制就是起一个缓存,然后等下次调用的时候就直接从缓存中取数据。
这跟工厂反射你的IE浏览器浏览网页是一个道理的。
创建不同的数据层对象接口
以上几个理解了。这个也就好理解了。也就是创建一些接口来编程了。比较灵活点。
具体接口的实现就交给工厂模式去实现。
如果你学过SPRING的话就会明白了,spring里面就集成了这些玩意。
具体的还得自己去深入了解程序了,查查资料。外人不可能说的那么详细的。
自己明白了才算真正明白。
可能是通过反射实例化的对象的构造函数出现了异常。
看下InnerException 就知道哪里出现问题了
java里有“反射”这个术语吗?不是工厂方法是工厂模式工厂反射,工厂模式又分为工厂反射:简单工厂模式、工厂模式、抽象工厂模式。既然你要最简单工厂反射我就给你个简单工厂模式例子:
运动员.java
public interface 运动员 {
public void 跑();
public void 跳();
}
足球运动员.java
public class 足球运动员 implements 运动员 {
public void 跑(){
//跑啊跑
}
public void 跳(){
//跳啊跳
}
}
篮球运动员.java
public class 篮球运动员 implements 运动员 {
public void 跑(){
//do nothing
}
public void 跳(){
//do nothing
}
}
体育协会.java
public class 体育协会 {
public static 运动员 注册足球运动员(){
return new 足球运动员();
}
public static 运动员 注册篮球运动员(){
return new 篮球运动员();
}
}
俱乐部.java
public class 俱乐部 {
private 运动员 守门员;
private 运动员 后卫;
private 运动员 前锋;
public void test() {
this.前锋 = 体育协会.注册足球运动员();
this.后卫 = 体育协会.注册足球运动员();
this.守门员 = 体育协会.注册足球运动员();
守门员.跑();
后卫.跳();
}
}