类库、委托、is和as运算符、泛型集合

时间:2022-06-28 01:21:50

类库(Class Library)是一个综合性的面向对象的可重用类型集合,这些类型包括:接口、抽象类和具体类。类库可以解决一系列常见编程任务(包括诸如字符串管理、数据收集、数据库连接以及文件访问等任务),,还可以解决多种专用开发任务(控制台应用程序、桌面应用程序、WEB应用程序等)。

优点:保密性好,用户无法看到方法结构体
缺点:如果这个方法不好用,使用者无法自己去更改它。

鼠标放在类上按下F12可以查看程序集

1、创建类库

类库创建完成,它默认public,并且没有主函数,无法进行启动,它只是一个类的集合。

2、重命名

3、写方法并生成方案

4、传送文件:找到文件保存位置下的 bin → Debug 文件中的 dll 文件,将此文件传送给目标用户,此文件

5、添加类库

双击打开查看方法名

6、引用类库的命名空间

7、初始化后即可使用方法

=====================================================================================================

委托

委托可以理解为:函数的指针(定义一个变量指向一个函数)            关键词:delegate

声明:public delegate int FirstDel(int a, int b);

创建委托变量:FirstDel 名字 = 与这个委托类型相同的方法;   位置:主函数上方

=====================================================================================================

is 和 as 运算符

is : 判断某一个对象是否是某一种类型
对象 is 类型名 是这种类型  返回 true 不是返回 false
as : 将某一个对象转换成某一种类型,如果转换不成功,那么会给这个对象赋一个null,不会抛出异常

is 和 as 用在用户自定义类中,无法用在系统类中

创建一个集合,放入两个不同类型的内容,我想用里面的 Random ,如下图:

如果调用al[0],会出现报错,因为al[0]不是 Random 类

可以先判断是不是某个类型,再继续执行

as用法:如果类型正确则正常执行,如果不正确返回一个NULL值,不会报错,在用户体验中用的多

=====================================================================================================

泛型集合 List<T>

综合了集合与数组的优点

集合不固定类型,不固定长度,数组固定类型,同时固定长度

通常既需要不固定长度,又要相同类型

泛型集合 就是固定数据类型,不限制长度的一种集合,保证添加和读取的数据一定是某种类型

创建泛型集合 List<T> ,如果是 string ,则添加只能添加 string 类型的数据