面向对象 【类库】【委托】【is as运算符】

时间:2024-04-21 10:18:56

类库(Class Library)

.dll文件

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

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

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

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

写类库

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

引用

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

通用变量: var

is 和 as 运算符:

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

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

否则false

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

如果转换成功了,    返回对象

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

委托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  两个方法