关于反射

问题描述

什么是反射能否举个例子说明一下还有那个dll文件怎么生成看了好多网页看不懂啊

解决方案

解决方案二:
按我的理解反射,用个比较土的解释假如有你有个朋友,你想看他肚子里有几条蛔虫,那么你可以用个大镜子伸到他肚子里…………这个镜子就是反射,只是这个镜子太大了,只能慢慢进去,慢慢出来。。。。所以效率低好像讲得有点恶心。。。。至于语法的话参考MSDN多写几次就明白了
解决方案三:
用个比较恶心的解释我的理解假如你有个朋友,你想要了解他肚子里有几条虫,但肚子不是公开的,这是你可以使用一个X镜伸进他肚子里看…………只是这个镜子太大了,只能慢慢进去慢慢出来,所以效率低。好像讲得有点恶心。。。这个X镜就是反射具体的语法查看MSDN多跟这些几次就明白了
解决方案四:
楼上的昵称和回复都很恶心。。。
解决方案五:
怎么今天一直发重复的。。。第一次提交失败==!
解决方案六:
Assemblyasb=Assembly.LoadFile(@"D:ProjectC#TestWindowsApplication1WindowsApplication1binDebugWindowsApplication1.exe");foreach(Typet2inasb.GetTypes()){Debug.WriteLine(t2.FullName);}Typet=asb.GetType("WindowsApplication1.Form2+c");//namespaceTypet1=typeof(int);ConstructorInfocinfo=t.GetConstructor(newType[]{t1});objecto1=1;objecto=cinfo.Invoke(newobject[]{o1});intj=(int)t.GetMethod("getx").Invoke(o,newobject[]{});namespaceWindowsApplication1{publicpartialclassForm2:Form{publicForm2(){InitializeComponent();}publicclassc{publicintx=0;publicintgetx(){returnx;}publicc(intz){x=z;}}}dll生成新建classlibary。bulid。。。bin下.dll在此.
解决方案七:
师太老纳久仰了
解决方案八:
在属性中可以设置生成dll文件还是exe文件
解决方案九:
。。。我好笨。。。还是不理解
解决方案十:
新建类库项目,生成的就是dll
解决方案十一:
反射可以获得类型的信息,成员信息,方法信息等
解决方案十二:
5楼的运行不出嘛

时间: 2024-10-21 08:14:19

关于反射的相关文章

从反射看委托与事件 委托真的是一个类

关于委托与事件,网上介绍得非常之多,在此不再赘述,本人最近需要捣鼓一些委托,因而对委托进行一 定的寻根究底,故用反射把委托的成员揪出来,且看如下代码: delegate void DelegateDemo(); static event DelegateDemo delHandle; static void Main() { delHandle += new DelegateDemo(MyDelegate_delHandle); MemberInfo[] mis = delHandle.GetT

JAVA核心层--反射--动态代理

本文发表于2010年,时间较早,部分问题解释不是十分准确,所以需要进一步了解,请参看2012年版本: java之架构基础-动态代理&cglib 要在JAVA技术上突破普通的层面,并拥有一翻设计理念的高度,除了要有很好的设计思维之外,反射在适当的使用下,将会把框架做得非常清晰,并且代码编写也非常简便. 在面向对象的编程中,我们为什么要忌讳去大量使用if else switch语句,因为这样写是将逻辑硬编码了,JAVA的思想就是将其配置化,一旦可配置化后,就逐渐可管理化,并随着产品的成熟逐步实现自动

程序集和反射(二)

上篇文章主要介绍了程序集的内容:程序集和反射(一),时隔这么久,今天终于腾出点时间,把反射部分的知识点给整理一下,不把这个写完,心里总觉得有点堵.对于反射,我相信很多人跟LZ一个德行,不会,所以不用,不用,所以永远不会.      通过System.Reflection命名空间中的类已经System.Type,您可以获取有关已加载的程序集和在其中定义的类型(如类.接口.值类型)的信息.您也可以使用反射在运行时创建类型实例,以及调用和访问这些实例.      程序集包含模块,而模块包含类型,类型又

Android中利用反射技术实现加减乘除

JAVA反射机制定义: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有 属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取 的信息以及动态调用对象的方法的功能称为java语言的反射机制. Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类: 在运行时构造任意一个类的对象:在运行时判断任意一个类所具有的成员变量和 方法:在运行时调用任意一个对象的方法:生成动态代理. 有时候我们说某个语言具有很强的动态性,有时候我们会区分动态和静态的

结合AJAX和反射Refrection,实现页面无刷执行函数体

ajax|函数|页面|执行 其实做这么个东西没什么具体用途,只是在看到这个帖子和这篇BLOG后来了兴趣,突发其想来试试能不能做个在线的编译器,顺便也研究下ajax和反射: ajax是看很长时间了,比较关注微软的开发包Atlas的动态,也有很多资源: ·MSDN的Atlas 网站 ·ASP.NET "Atlas" 官方网站 ·ASP.NET "Atlas" 预览文档 ·Atlas  快速入门教程 以上几个连接来自思归 的blog,看来他也很关心这项技术: 前面好长一段

C#反射技术的简单操作(读取和设置类的属性)

要想对一个类型实例的属性或字段进行动态赋值或取值,首先得得到这个实例或类型的Type,微软已经为我们提供了足够多的方法. 首先建立一个测试的类 复制代码 代码如下: public class MyClass { public int one { set; get; } public int two { set; get; } public int five { set; get; } public int three { set; get; } public int four { set; ge

谈.NET反射的封装

.NET反射提供了在运行时获取对象类型元数据的途径,使程序可以动态地调用对象的属性.方法.动态性带来的代价是反射调用不像基于静态类型的直接调用那样简洁,且缺乏类型检查机制,失去了IDE智能提示,容易出错:于是,不少朋友尝试对.NET反射进行封装. 这个话题是仁者见仁,智者见智,这里我也谈谈自己对.NET反射封装的思路,请先看下面的示例代码: static void Main(string[] args) { Person liu = new Person("liu", 26); Ref

学习反射中的动态创建对象

Assembly的CreateInstance有三个重载,第一个参数需要是一个字符串表示的完整的类名.第二个参数是一个bool类型,如果为true,表示对第一个参数不区分大小写. 第三个: 影响执行搜索的方式的位屏蔽.此值是 System.Reflection.BindingFlags 中的位标志的组合. // binder: 一个启用绑定.参数类型强制.成员调用以及通过反射进行 MemberInfo 对象检索的对象.如果 binder 为 null,则使用默认联编程序.// args: Obj

简化繁琐的赋值——反射在Jdbc和Struts中的应用

缘起在Jdbc应用中,我们经常需要有这么样的一个Javabean:当我们从数据库里取值时,我们希望把对应的值赋给Javabean,而后再操作Javabean进行各种业务处理:而我们保存数据的时候,也希望把经过业务处理后的值赋给Javabean,再由该Javabean与Jdbc交互,将数据保存在数据库里. 而在Struts应用中,我们经常要跟ActionForm或DynaActionForm打交道,例如从业面取得用户输入的数据,在Struts应用中,我们实际上是从ActionForm中取得数据:而

对.NET Framework 反射的反思

清晰的组件化目标是否因在库间共享过多类型信息而落空?或许您需要高效的强类型化数据存储,但如果每次对象模型发展后都需要更新您的数据库架构,那会耗费很大成本,所以您更愿意在运行时推断出其类型架构吗?您需要交付能接受任意用户对象的组件,并以某种智能化的方式处理它们吗?您希望库的调方者能以编程方式向您说明它们的类型吗? 如果您发现自己在苦苦维持强类型化数据结构的同时,又冀望于最大化运行时灵活性,那么您大概会愿意考虑反射,以及它如何改善您的软件.在本专栏中,我将探讨 Microsoft .NET Fram