
一个需求引出反射
1.根据配置文件re.properties指定信息,创建Cat对象并调用方法hi(Cat类在com.hj包下,里面有hi方法)
12classfullpath=com.hj.Catmethod=hi
传统方法是直接new
Cat对象,然后调用。但现在是要从配置文件得到信息,再得到对象。
2.这样的需求特别多,即通过外部文件配置,在不修改源码的情况下,来控制程序,也符合设计模式的ocp原则(开闭原则:不修改源码,扩容功能)
示例:
文件结构:
re.properties
123classfullpath=com.hj.Catmethod=hi# 以后要调用cry方法,只需修改此处的配置文件即可
Cat.java
12345678910public class Cat { private String name = "招财猫"; public void hi() { System.out.println("hi" + name); } ...