您的位置:首页 > 编程语言 > C#

C#学习记录

2005-11-16 12:37 330 查看
public-成员可以由认可代码访问 private-成员只能由类中的代码访问(如果没有使用任何关键字,就默认使用该关键字) internal-成员只能youlei或派生类中的代码访问 protected-成员只能由类或派生类中的代码访问
公共域用PascalCasing来命名,私有域用camelCasing来命名。公共属性也用PascalCasing来命名。
域可以使用关键字readonly,表示这个与只能在执行构造函数的过程中赋值,或由初始化赋值语句赋值。
对方发的定义,使用了static关键字,这个方法就只能通过类来访问,不能通过对象实例来访问。
virtual-方法可以重写 abstract-方法必须重写(只用于抽象类中)overrride-方法重写了一个基类方法(如果重写就必须使用)
extern-方法定义放在其他地方
Get块必须有一个属性类型的返回值,简单的属性一般于一个私有域相关联,以控制对这个域的访问,此时get块可以直接返回该域的值。
Set函数以类似的方式把一个值赋给域,这里可以使用关键字value引用用户提供的属性值
this可以用在类成员的内部,且也引用对象实例。由this引用的对象实例是当前的对象实例(不能在静态成员中使用)
接口成员的定义和类成员的定义相似,但有几个重要的区别:
*不允许使用访问修饰符(public,private,protected或internal),所有的接口成员都是公共的。
*接口成员不能包含代码体。
*接口不能定义域成员。
*接口成员不能用关键字static,virtual,abstract或sealed来定义。
*类型定义成员是禁止的。
但要隐藏继承了基接口的成员,可以用关键字new来定义他们
执行接口的类必须包含该接口的所有成员的执行代码,且必须匹配指定的签名(包括get和set块),并且必须是公共的。可以使用关键字virtual或abstract来执行接口成员,但不能使用static或const
DoSomething()是显式的执行的,而DoSometingElse()是隐式的执行接口

开发一个类模块,Card-表示一个标准的扑克牌 Deck-表示一副完整的52张扑克牌 在开发一个简单的客户程序。
Card类基本上是两个只读域suit和rank的容器,要重写System.Object的ToString()方法,这样才能获得可以理解的字符串
为suit和rank提供枚举。
Deck类包含52个Card对象,通过GetCard()方法来实现
建立类库 然后suit枚举定义 rank枚举定义 Card类的定义
Deck类的定义 最后是执行Shuffle()方法,这个方法创建一个临时扑克牌数组,并把扑克牌从现有的cards数组随机复制到这个数组中。
索引符是一个特殊类型的属性,可以添加到一个类中,以提供类似于数组的访问。this关键字与方括号中的参数一起使用,这个语法是富有逻辑的,因为访问索引符时,将使用对象名,后跟放在方括号中的索引参数(例如MyAnimals[0])。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: