抽象工厂-反射应用于总结
前言:
利用反射来创建用户表,前面用抽象工厂,简单工厂。等等做过要实例化哪个类的选项,这次试用反射来实现。
优点:
1 减少耦合性
2 方便替换
3 符合开放封闭性原则
格式:
Assembly.Loga(“程序集名称”).CreateInstance(“命名空间.类名称”)
解释:
程序集是给反射起的名字
类名是你要实例化的哪个具体类
客户端的用法:
抽象工厂
User user = new User();
Department dept = new Department();
//区别
IFactory factory = new AccessFactory();
IUser iu = factory.CreateUser();
iu.Insert(user);
iu.GetUser(1);
IDepartment id = factory.CreateDepartment();
id.Insert(dept);
id.GetDepartment(1);
Console.Read();
反射
User user = new User();
Department dept = new Department();
//区别
IUser iu = DataAccess.CreateUser();
iu.Insert(user);
iu.GetUser(1);
IDepartment id = DataAccess.CreateDepartment();
id.Insert(dept);
id.GetDepartment(1);
Console.Read();
其他的还是和前面是一样的,就是在实例化和具体创建对象的具体方法换了。前面使用的是抽象工厂模式,在这使用的是 反射的方式实现的。
欢迎访问csdn的博客:
https://blog.csdn.net/kangshihang1998?spm=1010.2135.3001.5343