zoukankan      html  css  js  c++  java
  • 如何理解反射?

    反射是指在运行时获取程序集、类、函数的信息,目前我只知道JAVA和.Net支持这样的功能,这就解释了为什么.Net组件不用注册的疑问,因为它能在运行时获取程序集、类、函数的信息,比如给你一个.Net写的DLL,你就能用反射机制知道它里面有些什么类,该类有什么成员方法(包括参数)、属性,甚至私有函数。
    这比COM先进的是不用读注册表,且COM的方法和属性难以分清楚,都是公有函数的形式,私有函数更不用提了。
    在实际使用中用处太大了,可以说带来一种新式的编程方式,比如说:有一张表有三个字段,A,B,C,写一个类(CTable)访问此表,该类有三个属性对应于三个字段(CTable.A,   CTable.B,   CTable.C),此类作为中间层,客户端使用此中间层时可以这样,运用反射机制一次循环读出这三个属性,客户端可以知道属性名(A,B,C)属性个数及类型,据此构造一个DBGrid,表头就用属性名ABC,一切都是自动的,你无须事先知道数据库的表中有多少字段,字段名是什么,也不必知道那个类的属性有多少。                                          
    更妙的是,当你的表需要增加一个字段时,你只要在类中添加一个属性即可,客户端程序不必作任何修改,DBGrid会自动把新字段显示出来,多么精妙!
  • 相关阅读:
    laravel5.* 生成key
    Laravel 调试利器 Laravel Debugbar 扩展包安装及使用教程
    JS相关
    Git常用命令(全)
    linux添加计划任务
    30个php操作redis常用方法代码例子(转载)
    获取服务器IP和客户端IP
    PHP-redis中文文档(相关)
    常用算法排序
    软件下载(汇总)
  • 原文地址:https://www.cnblogs.com/yangyang8848/p/377431.html
Copyright © 2011-2022 走看看