摘要:
打开书一看,这章讲的是迭代器,一下懵了,不知道是什么东东,以前学习的时候也没有听说过。都打算跳过了,看一下简介。庆幸的是没有跳过。迭代器说真的是个很重要的东西啊!在数据库的遍历里会用到的吧,依我现在的理解。来看看他的概念吧。不管事什么东西概念都是最精华的哦。真正的理解了,你就进价了。copy的了。 迭代器是 C# 2.0 中的新功能。迭代器是方法、get 访问器或运算符,它使您能够在类或结构中支持 foreach 迭代,而不必实现整个 IEnumerable 接口。您只需提供一个迭代器,即可遍历类中的数据结构。当编译器检测到迭代器时,它将自动生成 IEnumerable 或 IEnumerab 阅读全文
摘要:
使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员。static 修饰符可用于类、字段、方法、属性、运算符、事件和构造函数,但不能用于索引器、析构函数或类以外的类型。使用static关键字应该注意一下几点:常数或者类型声明隐式地是静态成员。不能通过实例引用静态成员。然而,可以通过类型名称引用它若要引用静态成员 x,请使用完全限定名(除非可从相同范围访问): MyBaseC.MyStruct.x尽管类的实例包含该类所有实例字段的单独副本,但每个静态字段只有一个副本。不可以使用 this 来引用静态方法或属性访问器。如果对类应用 static 关键字,则该类的所有成员都必须是静 阅读全文
摘要:
is运算符 is运算符用来检查对象是否与给定类型兼容。如可以在if语句中用is检测对象。 阅读全文
摘要:
密封类密封类可以用来限制扩展性,当在程序中密封了某个类时,其他类不能从该类继承,可防止对垒进行自定义。定义密封类——sealed密封方法下面的代码中用到了virtual(虚拟)修饰符virtual 关键字用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。 例如,此方法可被任何继承它的类重写。默认情况下,方法是非虚拟的。 不能重写非虚方法。virtual 修饰符不能与 static、abstract, private 或 override 修饰符一起使用。除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。在静态属性上使用 virtual 修饰符是错误的。通过包括使用 ov 阅读全文
摘要:
本来是不想把这个例子放到上面去的,但是看了一下,发现他还是有一个好的优点值得我们去使用的。在讲到抽象类的时候之前提到了,抽象类不能实例化:如图的就是一个实例化的过程People类就不能实例化。所以这里借助了普通类对抽象类的继承,来实现了抽象类中方法的实现。这对于一些公共方法,我们就可以创建抽象类来容纳。然后用普通类来继承抽象类里面的方法,而且不用重复的编写相同的代码,达到简化代码的效果。大家试试看吧。 阅读全文
摘要:
抽象类的定义抽象类的用途是提供多个派生类可共享的基类的公共定义,并使用abstract关键字定义。abstract不仅可以创建继承用途的类,也可以定义类成员。即定义派生的非抽象类的功能。抽象类的用途和接口很相似,也是不能实例化的。但是抽象类可以定义方法的实现。可以把抽象类看作是接口和普通类的结合。抽象方法的定义抽象方法的定义在所定义的方法前面加abstract,抽象成员不能是私有的,定义方法如下:抽象方法没有实现所以,方法定义后面加分号。抽象类的派生类必须实现所有抽象方法:代码如下在此例中,用到了override修饰符,类 Class3 必须提供 SayHello 的重写实现,因为 Class 阅读全文
摘要:
接口作为返回值示例代码 阅读全文
摘要:
1.使用接口作为参数示例代码2.使用接口作为返回值 阅读全文
摘要:
说到接口的继承,我们会想到类的继承。类可以继承任何一个类或多个接口。而接口可以多重继承接口。 例子:假设有一类人既有工作又还在学习,现在要对这一类人建模。我们可以第一种: 第二种:用构造函数或析构函数来实现。在这里我们就不能用类的继承来实现,因为类只能继承一个类。类的继承关系如图:现在我们来用几口的继承来实现一下。可以先创建一个IPeople接口,创建两个接口IWorker和IStudent来继承IPeople接口,在创建一个类来实现WorkerStudent或StudentWorker类,使其继承接口IWorker和IStudent 阅读全文
摘要:
小菜初来乍到,好多的不知道,不了解。希望各位多多的关照。不胜感激 阅读全文