网站大量收购闲置独家精品文档,联系QQ:2885784924

1-C核心编程_第七章(定义类)全解.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1-C核心编程_第七章(定义类)全解

2011-03-12 无锡ETC彭君添加部分代码和图片 人看世界的思想总结起来就是面向对象(唯物主义) 人工智能,使电脑像人一样看世界万物 总结:项目当成人,有各部件和功能 生物类,非生物类 生物类:动物类,植物类,微生物类 第五章 面向对象 回顾 多态性 对象之间的关系 运算符重载 本章目标 类定义 构造函数和析构函数 接口和抽象类 类定义 C#使用关键字class来定义类: class Myclass { //Class Members; } 定义了一个类后,就可以在项目中能访问该定义的其他位置对该类进行实例化。 默认情况下,类声明为内部的,即只有当前项目中的代码才能访问它,可以使用internal访问修饰符显示指定,如下所示: (internal) class Myclass { //Class Members; } 类定义 另外,还可以指定类是公共的,应该可以由其他项目中的代码来访问。为此要使用关键字public: public class MyClass { //Class members. } 类定义 除了这两个访问修饰符关键字外,还可以指定类是抽象的或密封的。为此,可以使用两个互斥的关键字abstract和sealed。所以,抽象类必须用下述方式声明: public abstract class MyClass { //Class members,may be abstract. } 其中除了MyClass是一个公共抽象类,也可以是内部抽象类。 类定义 密封类的声明如下所示: public/internal sealed class MyClass { //class member. } 与抽象类一样,密封类也可以是公共的或内部的。 还可以在类中指定继承: public class MyClass:MyBase { //Class member. } 注意:在C#类定义中,只能有一个基类,如果继承了一个抽象类,就必须实现所继承的所有抽象成员(除非派生类也是抽象的)。 类定义 除了以这种方式指定基类外,还可以在冒号之后指定支持的接口。如果指定了基类,它必须紧跟在冒号后,之后才是指定的接口。如果没有指定基类,则接口就跟在冒号后,必须使用逗号分隔基类名和接口名。 如给MyClass添加一个接口,如下所示: public class MyClass:IMuInterface { //Class member. } 所有接口成员都必须在支持该接口中实现,但如果不想使用给定的接口成员,就可以提供一个“空”的实现方式(没有函数代码)。还可以把接口成员实现为抽象类中的抽象成员。 类定义 以下是类定义中可以使用的访问修饰符的组合。 修饰符 含义 无或internal 只能在当前项目中访问类 public 可以在任何地方访问类 abstract或internal abstract 类只能在当前项目中访问,不能实例化,只能供继承所用 public abstract 类可以在任何地方访问,不能实例化,只能供继承所用 sealed或internal sealed 类只能在当前项目中访问,不能供派生使用,只能实例化 public sealed 类可以在任何地方访问,不能供派生使用,只能实例化 接口的定义 声明接口的方式与类声明的方式相似。但使用的关键字是interface,而不是class,例如: interface IMyInterface//接口名称以大写字母I开头 { //Interface member. } 访问修饰符关键字public和internal的使用方式是相同的,与类一样,接口也默认定义为内部接口。所以要使用接口可以公开访问,必须使用public关键字: public interface IMyInterface { //Interface member. } 接口的定义 不能在接口中使用关键字abstract和sealed,因为这两个修饰符在接口定义中是没有意义的,它们不包含实现代码,所以不能直接实例化,且必须是可以继承的。 接口的继承也可以用与类继承的方式来指定。主要的区别是可以使用多个基接口,例如: public interface IMyInterface:IMyBaseInterface,IMyBaseInterface2 { //Interface member. } 接口的定义 接口不是类,所以没有继承System.Object。但为了方便起见, System.Object的成员可以通过接口类型的变量来访问。 不能用实例化类的方式来实例化接口。 构造函数和析构函数 在C#中定义类时,常常不

文档评论(0)

0022515 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档