面向对象的重要知识点

object:是所有数据类型的祖宗,级别最高

------

is as  类型转换运算符;

(类型)对象,强制转换,如果转换不成功,则抛出异常;

is 判断某个对象或变量是否是某个类型 返回bool类型;

ArrayList arr = new ArrayList();
Class1 a = new Class1();
a.name = "段誉";
arr.Add(a);

foreach (object x in arr)
{
if (x is Class1)
{
Class1 o = (Class1)x;
Console.WriteLine(o.name);
}
}

--

as 类型转换,如果某个对象能转换成某个类型,那么会进行转换,如果无法转换成目标类型,那么他回返回一个null,不会抛出异常。

foreach (object x in arr)
{
Class1 o = x as Class1;
if (o != null)
{
Console.WriteLine(o.name);
}
}

万能变量 var; 能转能用

动态类型 dynamic;能转不能用

泛型集合

List<数据类型> li=new List<数据类型>;

List<Class1> l = new List<Class1>();
l.Add(a);
foreach (Class1 x in l)
{
Console.WriteLine(x.name);
}

比集合更好用;

类库:

它可以使类的方法转化为只有电脑能读懂而人却读不懂的东西,起到保密性,比如各大游戏的代码;

点击解决方案-创建类库-创建完生成-引用dll文件(注意命名空间和类名)-dll文件放到Bin/Debug文件下;

鼠标放在方法名上,按F12可以查看类库的位置与方法名;

委托 delegate:函数的指针

委托变量的类型必须与方法的一样(返回值,变量);

委托变量在赋值时,赋值的方法不需要写后面的小括号;

 public delegate int de(int a, int b);

 de d = a.cheng;
Console.WriteLine(d(1, 2));

转载于:https://www.cnblogs.com/m110/p/7821900.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值