摘要: 1 封箱和拆箱 封箱(boxing)是把值类型转换为System.Object类型,或者转换为由值类型实现的接口类型。拆箱(unboxing)是相反的过程。封箱:struct myStruct{ public int Val;}把结构放在object类型的变量中,以封箱myStruct valt... 阅读全文
posted @ 2015-05-13 21:19 DannyCat 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 1 System.Array类和System.collections.ArrayList类示例:控制台程序,新疆三个类,抽象类Animal以及两个继承类Cows和ChickenAnimal.cspublic abstract class Animal { protected ... 阅读全文
posted @ 2015-05-13 20:28 DannyCat 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 1 隐藏基类的方法 当基类继承一个(非抽象的)成员时,也就继承了其实现代码。如果继承的成员是虚拟的,就可以用override关键字重写这段实现代码。无论继承的成员是否为虚拟,都可以隐藏这些代码。 使用下面的代码就可以隐藏:public class MyBaseClass{ public voi... 阅读全文
posted @ 2015-05-04 12:00 DannyCat 阅读(5548) 评论(0) 推荐(0) 编辑
摘要: 属性拥有两个类似于函数的块,一个块用于获取属性的值,另一个块用于设置属性的值。这两个块也称为访问器,分别用get和set关键字来定义,可以用于控制对属性的访问级别。可以忽略其中的一个块来创建只读或只写属性(忽略get块创建只写属性,忽略set块创建只读属性)。当然,这仅适用于外部代码,因为类中的... 阅读全文
posted @ 2015-05-04 11:25 DannyCat 阅读(34093) 评论(0) 推荐(1) 编辑
摘要: 1 public 共有访问。不受任何限制。2 private 私有访问。只限于本类成员访问,子类,实例都不能访问。3 protected 只限于本类和子类访问,实例不能访问。4 internal 内部访问。只限于本项目内访问,其他不能访问。5 protected internal 内部保护... 阅读全文
posted @ 2015-04-30 15:06 DannyCat 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 委托的定义 委托(delegate)是一种可以把引用存储为函数的类型。这听起来相当的棘手,但是机制是非常简单的。委托的声明非常类似于函数,但是不带函数体,且要使用delegate关键字。委托的声明指定了一个返回类型和一个参数列表。 在定义了委托后,就可以声明该委托类型的变量。直接把这个变量初始化... 阅读全文
posted @ 2015-04-29 19:47 DannyCat 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 1 函数参数传递数组关键字paramsclass program{ static int SunVals(param int[] vals) { int sum = 0; foreach(int val in vals) { sum += val; } r... 阅读全文
posted @ 2015-04-29 16:52 DannyCat 阅读(3134) 评论(0) 推荐(0) 编辑
摘要: 1 类型转换1.1 隐式转换:从类型A到类型B的转换可以在所有情况下进行,执行转换的规则非常简单,可以让编译器执行转换。ushort destinationVar;char sourceVar = 'a';destinationVar = sourceVar;Console.WirteLine("s... 阅读全文
posted @ 2015-04-28 15:37 DannyCat 阅读(1088) 评论(0) 推荐(0) 编辑
摘要: 1 goto语句C#允许给代码行加上标签,这样就可以使用goto语句直接跳转到这些代码行上。该语句优缺点并存。主要的有点是:这是控制什么时候执行哪些代码的一种简单方式。主要缺点是:过多的使用这个技巧将使代码难懂。goto 2 三元运算符?:其中计算可以得到一个布尔值,运算的结果根据这个值来确定是还是... 阅读全文
posted @ 2015-04-28 13:28 DannyCat 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 1 代码注释/* */ #region&#endregion2 控制台应用程序Console.WirteLine("The first app in Beginning C# Programming!");3 变量类型别名允许值范围sbyteSystem.SByte-128~127byteSyste... 阅读全文
posted @ 2015-04-28 12:53 DannyCat 阅读(1148) 评论(0) 推荐(0) 编辑