.net学习心得

2011-11-10 作者: 心得体会  我要投稿

1.反射:反射是.net中的重要机制,通过反射可以在运行时获得.net中每一个类型,包括类、结构、委托和枚举的成员,包括方法、属性、事件,以及构造函数等。有了反射,既可以对每一个类型了如指掌。

下面来演示一下反射的实例

(1)新建一个类库项目。在解决方案上单击右键选择添加“新建项目”,在弹出来的框中选择“类库”,在下面名字栏中输入classlib。然后删除class1类,新添加一个类“classperson”,添加如下代码

``namespace classlib{ public class classperson {public classperson():this(null){

}public classperson(string strname){name = strname;}

private string name;private string sex;private int age;

public string name{get { return name; }set { name = value; }}

public string sex{get { return sex; }set { sex = value; }}

public int age{get { return age; }set { age = value; }}

public void sayhello(){if (null==name)console.writeline("hello world");elseconsole.writeline("hello," + name); } }}``

添加完之后编译生成一下,就会在这个类库项目中的bin\debug中有一个classlib.dll文件。然后添加一个控制台应用程序。引入system.reflaction的命名空间。添加的代码

using system;using system.collections.generic;using system.linq;using system.text;using system.reflection;//添加反射的命名空间

namespace consoleapplication4{ public class program {static void main(string[] args){console.writeline("列出程序集中的所有类型");assembly ass = assembly.loadfrom("classlib.dll");type[] mytype = ass.gettypes();type classperson = null;foreach (type p in mytype){console.writeline(p.name);if (p.name=="classperson"){《1》

.net学习心得的评论

登录 | 使用qq登录 你需要登录后才可以留言,登陆后请刷新本页