社区
C#
帖子详情
新手请教:有谁能讲一下什么是反射机制?能给个例子吗?
dycsdn
2003-07-31 10:11:21
有谁能讲一下什么是反射机制?能给个例子吗?
先在此谢过!!
...全文
69
5
打赏
收藏
新手请教:有谁能讲一下什么是反射机制?能给个例子吗?
有谁能讲一下什么是反射机制?能给个例子吗? 先在此谢过!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zapjx
2003-08-01
打赏
举报
回复
microsoft有详细解释
covis
2003-08-01
打赏
举报
回复
你用反射做关键字在本论坛搜,可以的到一些解释和使用方法。
Elsa_Fent
2003-08-01
打赏
举报
回复
反射是指在运行时获取程序集、类、函数的信息,目前我只知道JAVA和.Net支持这样的功能,这就解释了为什么.Net组件不用注册的疑问,因为它能在运行时获取程序集、类、函数的信息,比如给你一个.Net写的DLL,你就能用反射机制知道它里面有些什么类,该类有什么成员方法(包括参数)、属性,甚至私有函数。
这比COM先进的是不用读注册表,且COM的方法和属性难以分清楚,都是公有函数的形式,私有函数更不用提了。
在实际使用中用处太大了,可以说带来一种新式的编程方式,比如说:有一张表有三个字段,A,B,C,写一个类(CTable)访问此表,该类有三个属性对应于三个字段(CTable.A, CTable.B, CTable.C),此类作为中间层,客户端使用此中间层时可以这样,运用反射机制一次循环读出这三个属性,客户端可以知道属性名(A,B,C)属性个数及类型,据此构造一个DBGrid,表头就用属性名ABC,一切都是自动的,你无须事先知道数据库的表中有多少字段,字段名是什么,也不必知道那个类的属性有多少。
更妙的是,当你的表需要增加一个字段时,你只要在类中添加一个属性即可,客户端程序不必作任何修改,DBGrid会自动把新字段显示出来,多么精妙!
试想如果没有反射,你事必要从头改到脚:改数据库之后改中间层,如果是COM还再注册一次,再改客户端,岂不把人烦死?
lsqlxq
2003-07-31
打赏
举报
回复
有点点印象 好象听说过:
利用Attribute可以给类附加一些信息,但取出这些信息,这是通过.NET的反射来实现的
可能你比我还懂:当帮你顶一下 :)
wolve
2003-07-31
打赏
举报
回复
反映提供运行时生成,调用类的方法。
framework下的sample中有相关的例子。
asp.net知识库
C# 2.0会给我们带来什么 泛型技巧系列:如何提供类型参数之间的转换 C#2.0 - Object Pool 简单实现 Attributes in C# 手痒痒,也来个c# 2.0 object pool 泛型技巧系列:用泛型打造可复用的抽象工厂 体验.net2.0的优雅...
【收集】网络上各路大侠放出的面试题、求职技巧
我来教你找工作---
新手
篇 新人基本可以分为两种 1.在校学生 特征:在学校学习java,无工作经验(或简单实习过),水平全靠是否用功,毕业后打算加入程序猿行列。 优点:在学校接触知识多,有足够的时间学习...
《Python数据可视化:入门、实践、进阶》之入门篇
新手
上路
本课程是《Python数据可视化:入门、实践、进阶》系列课程的入门篇-Python
新手
上路:基础入门、Numpy、Pandas。本课程适合零基础学员学习,从Python的安装、常用工具的介绍开始,让学员能掌握如何在自己电脑上部署...
java面试题
面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地 注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一 部分,暂时不用部分细节。...
你连问问题都不会?怎么学编程!!!
只看看过一篇知乎文章:为什么一些程序员很傲慢?看完之后觉得说的挺对的,但也就当个文章看了,自己也是这么经历过来了,不管怎样,也能体谅。 直到前几天,
C#
110,538
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章