namespace NamespaceRef { class Program { static void Main(string[] args) { Person cy; string assemblyName = @"NamespaceRef"; string strongClassName = @"NamespaceRef.Chinese"; cy = (Person)Assembly.Load(assemblyName).CreateInstance(strongClassName); Console.WriteLine(cy.name); Console.ReadKey(); } } class Person { public string name; } class Chinese : Person { public Chinese() { name = "你好"; } } class American : Person { public American() { name = "Hello"; } } }
{
class Program
{
static void Main(string[] args)
{
Person cy;
string assemblyName = @"NamespaceRef";
string strongClassName = @"NamespaceRef.Chinese";
cy = (Person)Assembly.Load(assemblyName).CreateInstance(strongClassName);
Console.WriteLine(cy.name);
Console.ReadKey();
} } class Person
{
public string name;
} class Chinese : Person
{
public Chinese()
{
name = "你好";
}
} class American : Person
{
public American()
{
name = "Hello";
}
}
}
胡乱打个比方吧:你通过镜子中的倒影看到你背后站了个人,然后你就能抓住他了。
我感觉反射就是,你用一字符串,换来一个类的实例或者其他什么,通过影子找到真身~