什么是Assembly(程序集)?
using
System;
2 ![]() 3 ![]() 4 ![]() 5 ![]() 6 ![]() 7 ![]() ![]() ![]() 8 ![]() 9 ![]() ![]() ![]() 10 ![]() 11 ![]() ![]() ![]() 12 ![]() 13 ![]() 14 ![]() 15 ![]() 16 ![]() 17 ![]() 18 ![]() 19 ![]() 20 ![]() 21 ![]() 22 ![]() 23 ![]() 24 ![]() ![]() ![]() 25 ![]() 26 ![]() 27 ![]() 28 ![]() 29 ![]() ![]() 30 ![]() 31 ![]() ![]() 32 ![]() 33 ![]() 34 ![]() 35 ![]() 36 ![]() 37 ![]() 38 ![]() 39 ![]() 40 ![]() 41 ![]() } } 由于Assembly的存在给我们在实现设计模式上有了一个更好的选择。 我们在开发的时候有时候会遇到这样的一个问题,根据对应的名称来创建指定的对象。如:给出chinese就要创建一个chinese对象,以前我们只能这样来写代码:
1
那么如果我们有很长的一系列对象要创建,这样的代码维护起来是很困难的,而且也不容易阅读。现在我们可以通过在外部文件定义类的程序集名称和类的强名称来获得这样一个实例,即易于理解,又增强了扩展性还不用修改代码。
![]() 2 ![]() 3 ![]() 4 ![]() cy = (Country)Assembly.Load(assemblyName).CreateInstance(strongClassName); 结论 Assembly类有很多的方法和属性,它和Type一样有很多功能用于名称与方法和属性之间的转化。深入理解这两个类,你就可以清晰通用语言层是如何工作。 |