C#面向对象(类库、委托、is as运算符)

1、类库(Class Library)

.dll 文件

  类库字面意思就是类的集合,里面有很多被编译后的C#代码,不可阅读,不可修改,只能调用

  类库是一个综合性的面向对象的可重用类型集合,这些类型包括:接口、抽象类和具体类。

  类库可以解决一系列常见编程任务(包括诸如字符串管理、数据收集、数据库连接以及文件访问等任务)

  还可以解决多种专用开发任务(控制台应用程序、桌面应用程序、WEB应用程序等)。

写类库

        新建项目——类库——用C#编写代码(类一定是 public )——生产,生产解决方案——classlibrary/bin/Debug——.dll文件

引用

      解决方案管理器——添加——浏览——找到类库文件——添加——属性,复制本地:true —— 在命名空间引用。

2、is 和 as 运算符

 (1)is  是判断某个对象是否是某种类型,返回bool值

     某对象  is  某类型         如果匹配上    返回true,否则false

 (2)as 是将某个对象转换成某种类型,返回的是对象或是null

    如果转换成功了、返回对象,如果转换失败了、不会报错,而是返回一个null值

3、委托

关键词 delegate 

  方法的指针,当我们用delegate关键字声明委托时,编译器自动为我们生成类。

  委托是一个类,它定义了方法的类型,事件也是一种委托,但是是一种特殊的委托

   使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。

 委托使用:

     定义一种委托类型

     委托执行时要调用方法

     定义一个委托实例

     委托实例的调用

// 在类下面,min 函数上面定义委托
 public  delegate  int  FirstDel ( int a , int b )
————————— min 函数  —————————
                          // FirstDel 与 JiaJian 的格式一样 
JiaJian    jj   =   new   JiaJian ( );   // 返回值相同 都是 int             
FirstDel   td   =   jj.JiaFa             // 参数相同 都是两个 int 
  ................
 td   =  jj . JianFa                  //先设立了 JiaJian 类 包含 JiaFa 、JianFa 两个方法
原文地址:https://www.cnblogs.com/Tanghongchang/p/6722811.html