.NET类加载器 - 它是什么?

时间:2010-06-01 04:10:00

标签: .net

我找不到关于类加载器概念在.NET Framework中有什么好的文档?它是什么?它在哪里可以找到?有谁知道吗?

3 个答案:

答案 0 :(得分:14)

.NET程序集是部署的基本单位。实际加载组件的技术称为Fusion。有关详细信息,请阅读.NET Fusion Workshop。每个程序集都有自己的类加载器,用于从该程序集加载类型。

Hosting the Common Language Runtime也可能是有意义的。

我不认为.NET中的类加载器与Java中的类加载器具有相同的重要性或功能。类的加载将由程序集的类加载器处理。

动态加载通常通过加载程序集然后实例化类来完成:

Assembly assembly = Assembly.LoadFrom("assemblyName");
Type type = assembly.GetType("className");
object x = Activator.CreateInstance(type);

答案 1 :(得分:4)

兰迪·列维没有全部回答。类加载器比Assembly.LoadFrom做了更多的工作。 因为没有像'Assembly.Unload'这样的方法。只能通过关闭appdomain来卸载程序集。 Java的类加载器可以比Randy Levy的答案做得更多。这里标记了stackoverflow中更好的答案 Equivalent of Class Loaders in .NET

答案 2 :(得分:2)

你是什​​么意思?与Java类加载器类似的概念?在.Net中,概念映射到AppDomain(只搜索AppDomain)