- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
抽象类与密封类 抽象类 有时候基类并不与具体的事物相联系,而是只表达一种抽象的概念,用以为它的派生类提供一个公共的界面,为此,C#中引入了抽象类 abstract class 的概念。 定义抽象类的语句格式为: abstract class 类名 { …… //抽象类的成员定义 } 抽象类 抽象类使用abstract修饰符,对抽象类的使用有以下几点规定: 抽象类只能作为其它类的基类,它不能直接被实例化,而且对抽象类不能使用new 操作符。抽象类如果含有抽象的变量或值,则它们要么是 null 类型,要么包含了对非抽象类的实例的引用。 抽象类允许包含抽象成员,虽然这不是必须的。 抽象类不能同时又是密封的。 抽象类 abstract class Vehicle//定义汽车类 { publicint wheels;//公有成员 轮子个数 protected float weight;//保护成员 重量 public Vehicle(int w,float g) { wheels = w; weight = g; } public virtual void Speak() { Console.WriteLine(the w vehicle is speaking!); } }; 抽象类 class Car:Vehicle //定义轿车类 { int passengers;//私有成员 乘客数 public Car(int w,float g,int p) : base(w,g) { passengers = p; } public override void Speak() { Console.WriteLine(The car is speaking:Di-di!); } }; 抽象类 class Truck:Vehicle//定义卡车类 { int passengers;//私有成员 乘客数 float load;//私有成员 载重量 public Truck (int w,float g,int p,float l) : base(w,g) { passengers = p; load = l; } public override void Speak() { Console.WriteLine(The truck is speaking:Ba-ba!); } }; 抽象类 class Program { static void Main(string[] args) { Car c1 = new Car(4, 2, 5); Truck t1 = new Truck(6, 5, 3, 10); c1.Speak(); t1.Speak(); } } 抽象方法 由于抽象类本身表达的是抽象的概念,因此类中的许多方法并不一定要有具体的实现, 而只是留出一个接口来作为派生类重载的界面。 举一个简单的例子,“图形”这个类是抽象的,它的成员方法“计算图形面积”也就没有实际的意义。面积只对“图形”的派生类比如 “圆”、“三角形”这些非抽象的概念才有效,那么我们就可以把基类“图形”的成员方法“计算面积”声明为抽象的,具体的实现交给派生类通过重载来实现。 抽象方法 一个方法声明中如果加上 abstract 修饰符,我们称该方法为抽象方法(abstract method)。 在抽象类中定义方法,由于无法为其实例化任何代码,所以也需要将其定义为抽象的,定义格式如下: public abstract void 方法名(方法参数); 抽象方法 abstract class Vehicle//定义汽车类 { publicint wheels;//公有成员 轮子个数 protected float weight;//保护成员 重量 public Vehicle(int w,float g) { wheels = w; weight = g; } public abstract void Speak(); }; 抽象方法 class Car:Vehicle //定义轿车类 { int passengers;//私有成员 乘客数 public Car(int w,float g,int p) : base(w,g) { passengers = p; } public override void Speak() { Console.WriteLine(Th
您可能关注的文档
- 安装MATLAB R2013b和破解方法(图文版).pdf
- 安装教程-EndNote X7 [自动保存].pptx
- 安装与管理IIS个人WEB服务器.ppt
- 0阻抗匹配及阻抗变换.ppt
- 安装与配置DHCP服务器.ppt
- 01-02_Java程序组成.pdf
- 安装运行PROE 出错误解决方法集合.docx
- 01-第1篇 IP地址配置.pdf
- 奥迪原装附件及原装备件-新产品.pdf
- 01图论及网络基本知识.ppt
- 护理质量改进课件.pptx
- 2024-2030全球度米芬行业调研及趋势分析报告.docx
- 2024-2030全球分板机行业调研及趋势分析报告.docx
- 2024-2030全球光学三维动作捕捉系统行业调研及趋势分析报告.docx
- 2024-2030全球SPD智能调光玻璃行业调研及趋势分析报告.docx
- 2024-2030全球弹性窄幅面料行业调研及趋势分析报告.docx
- 2024-2030全球SPI型NOR闪存行业调研及趋势分析报告.docx
- 2024-2030全球光纤清洁盒行业调研及趋势分析报告.docx
- 2024-2030全球电动驱动压路机行业调研及趋势分析报告.docx
- 2024-2030全球低压成型粘合剂行业调研及趋势分析报告.docx
最近下载
- 无人驾驶车辆轨迹规划技术研究与应用 .pdf VIP
- 2025广东清远市英德市市区学校选调教师117人笔试备考题库及答案解析.docx
- 2025广东清远市英德市市区学校选调教师117人笔试备考试题及答案解析.docx
- 南芯产品规格书SC8886.pdf
- 2024-2025学年初中道德与法治七年级全一册中华民族大团结(同步训练)试题合集.docx VIP
- 2024-2025学年初中道德与法治七年级全一册中华民族大团结(单元测试)试题合集.docx VIP
- 全国建筑设计劳动(工日)定额(2015年度版).pdf
- 2024-2025学年初中道德与法治初中中华民族大团结教学设计合集.docx
- 第五节 中国的河流和湖泊.ppt
- 蔡康永论说话之道(完整版).doc
文档评论(0)