[译]反射(Reflection)和动态(dynamic)
var myAssembly = Assembly.LoadFile(@"C:\ClassLibrary1.dll"); var myType = myAssembly.GetType("ClassLibrary1.Class1"); dynamic objMyClass = Activator.CreateInstance(myType); // 获取类的类型信息 Type parameterType = objMyClass.GetType();// 浏览方法 foreach (MemberInfo objMemberInfo in parameterType.GetMembers()) {Console.WriteLine(objMemberInfo.Name);}// 浏览属性. foreach (PropertyInfo objPropertyInfo in parameterType.GetProperties()) {Console.WriteLine(objPropertyInfo.Name);}//开始调用 parameterType.InvokeMember("Display",BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.InvokeMethod | BindingFlags.Instance,null, objMyClass, null);
dynamic x = "c#"; x++;
/ Before the introduction of dynamic. Application excelApplication = new Application(); ((Excel.Range)excelApp.Cells[1, 1]).Value2 = "Name"; Excel.Range range2008 = (Excel.Range)excelApp.Cells[1, 1];
dynamic excelApp = new Application(); excelApp.Cells[1, 1].Value = "Name"; Excel.Range range2010 = excelApp.Cells[1, 1];
Reflection | Dynamic | |
Inspect (meta-data) | Yes | No |
Invoke public members | Yes | Yes |
Invoke private members | Yes | No |
Caching | No | Yes |
Static class | Yes | No |
再来一张图...
转载于:https://www.cnblogs.com/lazycoding/archive/2013/05/27/3100932.html
[译]反射(Reflection)和动态(dynamic)相关推荐
- C#反射(Reflection)详解
1. 什么是反射 2. 命名空间与装配件的关系 3. 运行期得到类型信息有什么用 4. 如何使用反射获取类型 5. 如何根据类型来动态创建对象 6. 如何获取方法以及动态调用方法 7. 动态创建委托 ...
- Java基础--反射Reflection
Reflection 反射能在运行时获取一个类的全部信息,并且可以调用类方法,修改类属性,创建类实例. 而在编译期间不用关心对象是谁 反射可用在动态代理,注解解释,和反射工厂等地方. -------- ...
- 反射(reflection)基础
反射(reflection) 1. 一个需求引出反射 1.1 请看下面的问题 根据配置文件 re.properties 指定信息,创建Cat对象并调用方法hi 我们用之前的方式处理就是: 先创建一个C ...
- JavaSE——第23章 反射reflection
JavaSE--第23章 反射reflection(老师:韩顺平) 文章目录 JavaSE--第23章 反射reflection(老师:韩顺平) 23.2 反射机制 23.2.1 Java refle ...
- 【java】java反射机制,动态获取对象的属性和对应的参数值,并属性按照字典序排序,Field.setAccessible()方法的说明【可用于微信支付 签名生成】...
方法1:通过get()方法获取属性值 package com.sxd.test.controller;public class FirstCa{private Integer num;private ...
- CSharpGL(43)环境映射(Environment Mapping)-天空盒(Skybox)反射(Reflection)和折射(Refraction)...
CSharpGL(43)环境映射(Environment Mapping)-天空盒(Skybox)反射(Reflection)和折射(Refraction) 开始 如图所示,本文围绕GLSL里的sam ...
- 深入理解java注解,java的4个元注解,注解三要素——定义、使用及读取执行,深入了解注解的底层本质,通过反射自动、动态获取注解所有属性以及属性值
1. 注解的定义 注解也是一种引用类型,编译后会生成 .class 字节码文件,作用就是为程序进行标识,不同注解能实现不同功能. 2. 注解的使用 3. 注解的读取执行 3.1 得不到注解信息,得到的 ...
- JavaME程序 Run Anywhere-- 利用反射机制来动态加载声
让JavaME程序 Run Anywhere-- 利用反射机制来动态加载声 时间:2008-02-23 09:26来源:互联网 让JavaME程序 Run Anywhere -- 利用反射机制来动态加 ...
- Java 反射机制和动态代理是基于什么原理,了解过吗?
工作多年以及在面试中,我经常能体会到,有些面试者确实是认真努力工作,但坦白说表现出的能力水平却不足以通过面试,通常是两方面原因: 1."知其然不知其所以然". 做了多年技术,开发了 ...
- 使用反射生成 JDK 动态代理
反射 反射赋予了我们在运行时分析类和执行类中方法的能力. 通过反射,可以获取任意一个类的所有属性和方法,还可以调用这些方法和属性. 使用反射生成 JDK 动态代理 JDK 动态代理只能为接口创建动态代 ...
最新文章
- java export命令_Linux 命令详解(一)export 命令
- NodeJS——模块全局安装路径配置以及关于supervisor的问题解释
- 【转】自旋锁及其衍生锁
- javafx由浅到深的 认识(一)
- aix 超过一天的文件_Aix 6.1下 /dev/null 21 文件过大导致根目录爆满
- 碰撞与鲜血:人类与自动驾驶的坎坷摩擦
- java中map的使用和排序使用
- 解决Visual Studio 2022 python 中文乱码问题
- 微信公众服务号申请、认证(开通支付)-微信开发图文教程
- 英国某电商在线零售客户细分_Kaggle项目
- css 实现单行、多行文本显示
- 计算机辅助设计的英语缩写是什么,计算机辅助设计的英文缩写是什么
- 删除计算机的用户凭据,windows凭据怎么填写? 电脑添加删除Windows凭据的技巧
- 使用Xgboost自带的读取格式DMatrix()
- postman+newman
- 读洛克的《政府论》下篇
- 七星网购血本打造立体视频商城
- JEECG微云快速开发平台相关资源下载
- 1015 - 计算几何之多边形的面积 - Build Your Home(POJ 3907)
- 大学生期末课程设计之Web前端流浪猫狗网站设计
热门文章
- C语言默认参数值的实现
- 初中物理凸透镜成像动态图_人教版初中物理八年级上册 平面镜成像 公开课优质课课件教案视频...
- python电话通知_教你如何用Python向手机发送通知
- python3.8使用pyttsx3报错_使用pyttsx3实现python语音播报
- Futter基础第2篇: 实现文本、容器【Text、Container】
- Android ListView + ArrayAdapter、SimpleAdapter、BaseAdapter实现列表
- nginx详解反向代理,负载均衡,LNMP架构上线动态网站
- Java基础小常识-final,抽象类,接口-(11)
- C#与Javascript变量、函数之间的相互调用
- LeetCode()Minimum Window Substring 超时,但觉得很清晰。