代码改变世界

随笔分类 -  C# 1.0

C#学习笔记(七):接口的执行

2006-01-13 10:38 by 努力学习的小熊, 1154 阅读, 收藏, 编辑
摘要: 一、接口的基本概念 接口的定义方式与类比较相似。 interface IMyInterface { //interface members } 接口成员的定义与类成员的定义之间的区别: 1.不允许使用访问修饰符(public,private,protected或internal),所有的接口成员都是公共的。 2.接口成员不能包含代码体。 3.接口不能定义域成... 阅读全文

C#学习笔记(六):类成员的其他议题

2006-01-12 10:56 by 努力学习的小熊, 1045 阅读, 收藏, 编辑
摘要: 一、隐藏基类的方法 当从基类继承一个(非抽象的)成员时,也就继承了其执行代码。如果继承的成员是虚拟的virtual,就可以用override关键字重写(重载)这段代码。无论继承的成员是否是虚拟的,我们都可以隐藏这些执行代码。例如: public class MyBaseClass { public void DoSomething() { ... 阅读全文

C#学习笔记(五):类成员的定义

2006-01-10 13:30 by 努力学习的小熊, 1071 阅读, 收藏, 编辑
摘要: 一、定义域 标准的声明格式: class MyClass { public int MyInt; } 这种声明格式的成员是可以对其进行初始化的。但是它是Myclass的公有成员,可在实例化Myclass的对象后进行初始化或修改操作。 MyClass myClass = new MyClass(); myClas... 阅读全文

C#学习笔记(四):结构类型

2006-01-09 11:05 by 努力学习的小熊, 1289 阅读, 收藏, 编辑
摘要: 我们首先看一个例子: using System; namespace Ch09Ex03{ class MyClass { public int val; } struct myStruct { public int val; } /// /// Class1 的摘要说明。 /// ... 阅读全文

C#学习笔记(三):抽象类和接口

2006-01-09 10:59 by 努力学习的小熊, 1770 阅读, 收藏, 编辑
摘要: 抽象类和接口的相似处: 抽象类和接口都包含可以由派生类继承的成员。接口和抽象类都不能直接实例化,但可以声明它们的变量。如果这样做,就可以使用多态性把继承这两种类型的对象指定给它们的变量。接着通过这些变量来使用这些类型的成员,但不能直接访问派生对象的其它成员。 抽象类和接口的区别: 派生类只能继承一个基类,即只能直接继承一个抽象类(但可以用一个继承链包含多个抽象类)。相反,类可以使用任意多个接口... 阅读全文

C#学习笔记(二):构造函数的执行序列

2006-01-09 08:34 by 努力学习的小熊, 2137 阅读, 收藏, 编辑
摘要: 任何构造函数都可以进行配置,以便在执行自己的代码前调用其它构造函数。 我们首先看看在创建类的实例时会发生什么情况。为了实例化派生的类,必须实例化它的基类。而要实例化这个基类,又必须实例化这个基类的基类,这样一直实例化到System.Object为止。结果是无论使用什么构造函数实例化一个类,总是要先调用System.Object.Object()。 如果对一个类使用非默认的构造函数,默认的情况是在其... 阅读全文

C#学习笔记(一):类

2006-01-06 17:16 by 努力学习的小熊, 1871 阅读, 收藏, 编辑
摘要: C#使用关键字class来定义类。其基本结构如下: class myclass { //class members } 定义这样一个类后,就可以在能访问该定义的工程的其他地方对该类进行实例化。 默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它。 可以用internal访问修饰符关键字显式指定,但这不是必须的,类在定义时默认为此类型的类。 ... 阅读全文

C#中XML的基本应用

2006-01-05 16:23 by 努力学习的小熊, 2248 阅读, 收藏, 编辑
摘要: 在学习之前,我们通过一个Hello World的例子检查自己的机器是否已经MSXML3。 第一步:建立要输入XML文档hello.xml。 Hello, world! 这是一个很简单XML文档,只包含一个节点的XML结构树。 第二步:建立XSLT文档hello.xsl。提示:默认的XSLT文件的后缀名为.xsl。 ... 阅读全文

读写XML文件

2005-12-31 12:01 by 努力学习的小熊, 3543 阅读, 收藏, 编辑
摘要: 本文将会涉及3个方面的内容: 1.存取XML文件 2.XML文档对象模型 3.XML和DataSet 这里我们先介绍操作XML文件的两个对象:XmlTextReader和XmlTextWriter 打开和读取Xml文件使用到的对象就是XmlTextReader对象。下面的例子打开了与程序在同一路径下的一个例子文... 阅读全文

需要注意变量作用域的使用

2005-12-28 14:36 by 努力学习的小熊, 966 阅读, 收藏, 编辑
摘要: 对于变量的作用域大家可能都很清楚,即变量的作用域包含定义它们的代码块和直接嵌套在其中的代码块。其实也可以应用到其他代码块上,例如分之和循环的代码块上,但是这里有一个需要注意的地方,请看下面这个例子: 1int i;2for(i=0;i<10;i++)3{4 string text = "Line" + Convert.ToString(i);5 Console.Wri... 阅读全文

base关键字的说明(学习使用)

2005-12-26 11:05 by 努力学习的小熊, 1519 阅读, 收藏, 编辑
摘要: 从本例中大家可以看出继承和重载的使用,各人感觉简明易懂。在第二个例子中大家可以看出如何指定在创建派生类实例时调用的基类构造函数。base 关键字用于从派生类中访问基类的成员: 调用基类上已被其他方法重写的方法。 指定创建派生类实例时应调用的基类构造函数。 基类访问只能在构造函数、实例方法或实例属性访问器中进行。 从静态方法中使用 base 关键字是错误的。... 阅读全文

Virtual关键字的说明

2005-12-22 11:40 by 努力学习的小熊, 4037 阅读, 收藏, 编辑
摘要: virtual 关键字用于修改方法或属性的声明,在这种情况下,方法或属性被称作虚拟成员。虚拟成员的实现可由派生类中的重写成员更改。 调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。(有关运行时类型和大部分派生实现的更多信息,请参见 10.5.3 虚拟方法。) 默认情况下,方法是非虚拟的。不能重写非虚方法。 不能将 ... 阅读全文