这个知识点很基础。

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace dazilianxi
{
public class book:IComparable
{
private int price;
private string title;
public book() { }
public book(int price ,string title)
{
this.price = price;
this.title = title;
}
public int Price
{
get { return this.price; }
} public string Title {
get { return this.title; }
} #region IComparable 成员 public int CompareTo(object obj)
{
book mbook = (book)obj;
return this.Price.CompareTo(mbook.Price);
}
public string DisplayName(string name)
{
return string.Format("学生姓名:{0}", name);
} #endregion
}
}

运行的main中代码:

/*
Type type = Type.GetType("dazilianxi.book");
Console.WriteLine(type.Name);
Console.WriteLine(type.FullName);
Console.WriteLine(type.Namespace);
//获取属性
PropertyInfo[] info = type.GetProperties();
foreach( PropertyInfo item in info )
{
Console.WriteLine(item.Name);
} Console.WriteLine("下面试方法");
//获取方法
MethodInfo[] meth = type.GetMethods();
foreach(MethodInfo me in meth)
{
Console.WriteLine(me.ReturnType.Name);
Console.WriteLine(me.Name);
}
*/
book lob = new book( ,"好书刊"); //获取运行时的程序集
Assembly asm = Assembly.GetExecutingAssembly();
//获取运行时的Type类型
Type type = asm.GetType("dazilianxi.book"); //获取运行时的对象实例
object stu = Activator.CreateInstance(type); //获取运行时指定方法
MethodInfo method = type.GetMethod("DisplayName");
object[] parameters = new object[];//定义参数数组
parameters[] = "88lll";//参数赋值
// parameters[1] = "hello";
//触发运行时的方法
string result = (string)method.Invoke(stu, parameters);//得到实例参数结果值
Console.WriteLine(result);

参考:http://www.cnblogs.com/darrenji/p/3817999.html

(C#基础)反射理解的更多相关文章

  1. Java基础之理解Annotation(与@有关,即是注释)

    Java基础之理解Annotation 一.概念 Annontation是Java5开始引入的新特征.中文名称一般叫注解.它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata) ...

  2. Java基础-反射(reflect)技术详解

    Java基础-反射(reflect)技术详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.类加载器 1>.JVM 类加载机制  如下图所示,JVM类加载机制分为五个部分 ...

  3. css基础--深入理解opacity和rgba的区别

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 前言 首先这两个都与透明度有关,那么他们之间有什么具体的区别呢?在实际工作中我们需要注意什么呢?请您接着往下看 语法 1. rg ...

  4. Java 高级基础——反射

    Java 高级基础--反射 反射的意义:Java 强类型语言,但是我们在运行时有了解.修改信息的需求,包括类信息.成员信息以及数组信息. 基本类型与引用类型 基本类型,(固定的 8 种) 整数:byt ...

  5. Java反射理解(五)-- 方法反射的基本操作

    Java反射理解(五)-- 方法反射的基本操作 方法的反射 1. 如何获取某个方法 方法的名称和方法的参数列表才能唯一决定某个方法 2. 方法反射的操作 method.invoke(对象,参数列表) ...

  6. Java反射理解(四)-- 获取成员变量构造函数信息

    Java反射理解(四)-- 获取成员变量构造函数信息 步骤 获取成员变量信息: obj.getClass() 获取类类型对象 成员变量也是对象,java.lang.reflect.Field 类中封装 ...

  7. Java 反射理解(三)-- Java获取方法信息

    Java 反射理解(三)-- Java获取方法信息 基本的数据类型.void关键字,都存在类类型. 举例如下: public class ClassDemo2 { public static void ...

  8. Java 反射理解(二)-- 动态加载类

    Java 反射理解(二)-- 动态加载类 概念 在获得类类型中,有一种方法是 Class.forName("类的全称"),有以下要点: 不仅表示了类的类类型,还代表了动态加载类 编 ...

  9. Java 反射理解(一)-- Class 类的使用

    Java 反射理解(一)-- Class 类的使用 概念 这里阐述几个基本概念: 在面向对象的世界里,万事万物皆对象.(在 Java 语言中,静态的成员.普通数据类型除外) 类也是对象,类是 java ...

随机推荐

  1. max3232

    max3232采用专有低压差发送器输出级,利用双电荷泵在3.0V至5.5V电源供电时能够实现真正的RS-232性能,器件仅需四个0.1uF的外部小尺寸电荷泵电容.max3232确保在120kbps数据 ...

  2. Android widget

    1,TextView :走马灯效果 2,EditText ,AutoCompleteText MutiAutoCompleteTextView 3,Button,ImageButton,RadioBu ...

  3. 误把Linux运行级别设置为6后的解决方法【转】

    本文转载自:http://www.wuji8.com/meta/841011126.html 误把Linux运行级别设置为6后的解决方法     我们知道,Linux有7个运行级别,而运行级别设置为6 ...

  4. luogu P2114 [NOI2014]起床困难综合症 位运算 二进制

    建议去uoj那里去测,数据比较强 位运算的题目,就得一位一位的分开考虑 然后枚举初始值的最高位是0 是1 的最终攻击 (二进制内)最高位是1肯定比次位是1次次位是1次次次位是1···的大吧,显然 然后 ...

  5. NOIP2018 退役记

    NOIP挂完,OI再见 AFO Day 0 早上的高铁,1点多到广州,2点多到酒店,下午就是颓颓颓,然后晚上随便刷了一下板子,反正PJ也没啥板子可以刷 就这样浪费了一天,我到底在干嘛 Day 1 早上 ...

  6. [bzoj 1616][Usaco2008 Mar]Cow Travelling游荡的奶牛

    题目描述 奶牛们在被划分成N行M列(2 <= N <= 100; 2 <= M <= 100)的草地上游走,试图找到整块草地中最美味的牧草.Farmer John在某个时刻看见 ...

  7. bugfree 数据库配置 显示No such file or directory

    把数据库服务器  localhost   改成127.0.0.1 sudo vi /etc/hosts 增加: 127.0.0.1   localhost 127.0.0.1   你的hostname ...

  8. selenium-firefox-headless

    from selenium import webdriver import time fireFoxOptions = webdriver.FirefoxOptions() fireFoxOption ...

  9. Python day14迭代器,三元表达式,列表解析以及生成器表达式

    1.迭代器 str=['sds','ccc','dw'] lit_1=str.__iter__()#获取迭代器 print(lit_1.__next__())#打印下一个值 # 用while做for的 ...

  10. 《剑指offer》第二十五题(合并两个排序的链表)

    // 面试题25:合并两个排序的链表 // 题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按 // 照递增排序的.例如输入图3.11中的链表1和链表2,则合并之后的升序链表如链 ...