C#反射机制 Type类型
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace 基于System.Type的反射
{
class Program
{
static void Main(string[] args)
{
//1.使用GetType() 反射类型
string a = "Hello world.";
Type t = a.GetType();
Console.WriteLine(t.FullName);
//2.使用Type.GetType() 反射类型
Type t1 = Type.GetType("System.String", false, true);
Console.WriteLine(t1.FullName);
//3.使用typeof获取类型
Type t2 = typeof(string);
Console.WriteLine(t2.FullName);
//通过方法获取对象的方法
GetMethods(t, BindingFlags.Public | BindingFlags.Instance);
// Console.WriteLine("join Methods:{0}",t.GetMethod("Copy"));
// Console.WriteLine("-----------------------------------------------------------");
// //知识点补充:抽象类不能实例化
#region 动态加载程序集
// //动态加载.net2.0所有程序集,并获取所有类型
Assembly objAssembly;
objAssembly = Assembly.Load("mscorlib,2.0.0.0,Neutral,b77a5c5619934e089");
Type[] types = objAssembly.GetTypes();
foreach (var t3 in types)
{
Console.WriteLine(t3.Name);
}
//获取当前执行的程序集
objAssembly = Assembly.GetExecutingAssembly();
//检查对象(基于System.Type的反射.car)
Type t4 = objAssembly.GetType("基于System.Type的反射.car", false, true);
//创建一个当前对象的实例
object obj = Activator.CreateInstance(t4);
//获取当前对象中存在的方法
MethodInfo mi = t4.GetMethod("IsMoveing");
//判断当前对象是否存在指定的方法 obj指实例化对象,null指IsMoveing()的参数
var ismoving = (bool)mi.Invoke(obj, null);
if(ismoving)
{
Console.WriteLine("Yes");
}
else
{
Console.WriteLine("NO");
}
#endregion
Console.ReadLine();
}
/// <summary>
/// 获取对象的所有方法 GetProperty()获取所有属性 GetFields()获取所有字段
/// </summary>
/// <param name="t"></param>
public static void GetMethods(Type t,BindingFlags f)
{
MethodInfo[] mi = t.GetMethods(f);
foreach (MethodInfo item in mi)
{
Console.WriteLine("{0}",item.Name);
}
}
}
class car
{
public bool IsMoveing()
{
return true;
}
}
}
C#反射机制 Type类型的更多相关文章
- 关于Java反射机制的几个问题
>>如何在运行时确定对象类型 运行时类型识别(Run-time Type Identification, RTTI)主要有两种方式, 一种是在编译时和运行时已经知道了所有的类型,另外一种是 ...
- c#反射机制学习和利用反射获取类型信息
反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类.结构.委托.接口和枚举等)的成员,包括方法.属性.事件,以及构造函数等.还可以获得每个成员的 ...
- Java基础 -- 深入理解Java类型信息(Class对象)与反射机制
一 RTTI概念 认识Claa对象之前,先来了解一个概念,RTTI(Run-Time Type Identification)运行时类型识别,对于这个词一直是 C++ 中的概念,至于Java中出现RT ...
- python之反射机制与callattr()、issubclass()、isinstance、type()相关
一.反射机制 * 反射可以理解为 通过字符串的形式,动态导入模块: 利用字符串的形式,在对象(模块)中操作(查找/获取/删除/添加)成员,是一种基于字符串的事件驱动! 反射机制的内置函数 # hasa ...
- JAVA类型信息——反射机制
JAVA类型信息——反射机制 一.反射机制概述 1.反射机制:就是java语言在运行时拥有的一项自我观察的能力,java通过这种能力彻底了解程序自身的情况,并为下一步的动作做准备. 2.反射机制的功能 ...
- Java反射机制demo(一)—实例化Class对象,并获得其他类包名和类型
Java反射机制demo(一)——实例化Class对象,通过对象获得包名和类型 使用Java中的 本地类作为实验对象,避免自定义的类带来的一些不便. public static void main(S ...
- 反射机制,jvm,class类型
[说明]这是上午完成的内容或者说是接触到的知识点,包括servlet简单的数据库连接,表格的显示需要用到的插件jstl,还有最最多的java反射原理的讲解 1)数据库的设计 2)编程中用到的知识点 3 ...
- Java学习之反射机制及应用场景
前言: 最近公司正在进行业务组件化进程,其中的路由实现用到了Java的反射机制,既然用到了就想着好好学习总结一下,其实无论是之前的EventBus 2.x版本还是Retrofit.早期的View注解框 ...
- 第28章 java反射机制
java反射机制 1.类加载机制 1.1.jvm和类 运行Java程序:java 带有main方法的类名 之后java会启动jvm,并加载字节码(字节码就是一个类在内存空间的状态) 当调用java命令 ...
随机推荐
- 招聘前端、Java后端开发、测试、Mysql DBA
公司介绍: http://www.lagou.com/gongsi/43095.html http://www.yamichu.com 简历发到: zhuye@yamichu.com 招聘职位: JA ...
- learn mips
可以使用MARS来编汇编,MARS是一个用java编的IDE,它是一个模拟环境. 样例:重要的句子输出三遍 .data str: .asciiz "weidiao is great\n&qu ...
- 2016 Web开发资源工具大搜罗
来源于:https://zhuanlan.zhihu.com/p/22730771 作者:余博伦链接:https://zhuanlan.zhihu.com/p/22730771来源:知乎著作权归作者所 ...
- requestAnimationFrame,Web中写动画的另一种选择
HTML5/CSS3时代,我们要在web里做动画选择其实已经很多了: 你可以用CSS3的animattion+keyframes; 你也可以用css3的transition; 你还可以用通过在canv ...
- 基于Twitter-Snowflake的java改进版,去状态化实现
package jeffery; import java.net.InetAddress; import java.net.UnknownHostException; import java.util ...
- Linux 远程复制文件
Linux 远程复制文件 如果想把机器A上面的dir目录下面的所有文件复制到机器B的dir目录下,我们可以使用nc命令来完成 在机器A的dir目录下面执行: tar -czf - * | nc -l ...
- 3 HTML&JS等前端知识系列之javascript的基础
preface 作为一名运维开发,必须懂得前端知识,比如javascript,dom等等,下面就聊聊javascript. include 数据格式 条件判断,循环流程等. 函数 面向对象 what ...
- CMS系统的实现图
- 面试题目——《CC150》智力题
面试题6.1:有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸.给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次. 思路:第1瓶取1颗,第2瓶取2颗....最 ...
- 在Excel中使用SQL语句查询和筛选
本文转自:http://blog.sina.com.cn/s/blog_5fc375650102e1g5.html 今天在微博上看到@数据分析精选 分享的一篇文章,是关于<在Excel中使用SQ ...