类库:
说白了,就是让别人调用你写的方法,并且不让别人看到你是怎么实现的。
如果有功能你不会做,需要别人帮忙,那么你的同事可以帮你写好一个类,然后你来调用这个类中的方法,完成你的项目。
1、C#源代码文件,包括在自己的项目中
2、类库,.dll优点:你写的方法别人看不到实现过程,保密性强
缺点:如果你写的方法有错误,别人无法更改
---------------------------------------------------------
namespace 加减类
{ public class jiajian { /// <summary> /// 计算加法的函数 /// </summary> /// <param name="a">第一个数</param> /// <param name="b">第二个数</param> /// <returns></returns> public int jia(int a, int b) { return a + b; }public int jian(int a, int b)
{ return a - b; }乘除类
namespace ClassLibrary1
{ public class chengchu { /// <summary> /// 计算除法函数 /// </summary> /// <param name="a">第一个数</param> /// <param name="b">第二个数</param> /// <returns></returns> public int chengfa(int a, int b) { return a * b; } public int chufa (int a, int b) { return a/b; }}
委托:
可以理解为 函数的指针delegate - 定义关键词
//声明委托类型
public delegate int FirstDel(int aaa, int bbb);//创建委托变量,赋值,函数指向
FirstDel f1 = new JiaJian().Jia; int c = f1(10, 20);-----------------------------------------------------------
var:万能类型
object:所有类型的基类
as:类型转换,如果转换不成功,不会报错,而是返回一个null
is:判断某个变量/对象,是不是某一种类型,返回bool值
* 泛型集合: List<T>
不固定长度,固定类型的一种集合
------------------------------------------------------------------------
namespace 类库_委托
{ class Program { //声明委托类型 public delegate int FisrtDel(int aaa, int bbb);static void Main(string[] args)
{ object ob = new jiajian();if (ob is chengchu)
{ chengchu cc = ob as chengchu; } List<chengchu> list = new List<chengchu>();
Console.ReadLine();
} public void aaaa(FisrtDel f, int a) { }
------------------------------------------------------------------