中国高校课件下载中心 》 教学资源 》 大学文库

《C#语言程序设计》课程教学课件(PPT讲稿)第3章 C#面向对象编程-5/9

文档信息
资源类别:文库
文档格式:PPT
文档页数:18
文件大小:685KB
团购合买:点击进入团购
内容简介
《C#语言程序设计》课程教学课件(PPT讲稿)第3章 C#面向对象编程-5/9
刷新页面文档预览

C#程序设计 第3章C#面向对象编程

C# 程序设计 第3章 C#面向对象编程

接口 接口 什么是接口 重点 接口接口的使用方法 如何使用实现了某接口的对象 接口实 如何继承多个接口 接口与抽象类的比较

2 接口 接口声明 接口成员 接口实现及继承 ★ 什么是接口 重点 接口的使用方法 如何使用实现了某接口的对象 如何继承多个接口 接口与抽象类的比较

问题 如老师和学生都会开车, 可提题 那么开车的方法应该放在哪个类? 调用会开车的方法不 需要改变 A:Teacher类 B:Student类 C:两个都放 造成代码冗余 D:Person:类 如果增加一个工人类,他不会开车。 E:重新定义 如果继承这个类,Person类怎么办? 自定义一个接口来实现IDrivingLicence 3

3 问 题 如老师和学生都会开车, 那么开车的方法应该放在哪个类? A:Teacher类 B:Student类 C:两个都放 D:Person类 E:重新定义 造成代码冗余 如果增加一个工人类,他不会开车。 如果继承这个类,Person类怎么办? 调用会开车的方法不 需要改变 自定义一个接口来实现IDrivingLicence

什么是接口 ■ 接口是引用类型,是一系列需要实现的功能 的定义。 合同、契约、协议 ■接口类似于抽象基类,接口不能实例化 ■接口成员包括: 如何使用接口?? ■方法 ■属性 ■索引器 ■事件 ■类和结构可以继承多个接口,接口本身可以 继承多个接口

4 什么是接口 ▪ 接口是引用类型,是一系列需要实现的功能 的定义。 ▪ 接口类似于抽象基类,接口不能实例化 ▪ 接口成员包括: ◼ 方法 ◼ 属性 ◼ 索引器 ◼ 事件 ▪ 类和结构可以继承多个接口,接口本身可以 继承多个接口 合同、契约、协议 如何使用接口??

接口声明 ■接口声明的基本形式如下: 一般为oublic 注意:建议接口名以大 只能是接口 写字母开头 [接口修饰符]interface接口名[:基接口] 接口体 接口中声明的所有成员隐式 地为publici和abstract ©接口如果声明在namespacer中,则只能用public修饰 默认为internal,不能用其他访问修饰符 ©接口不存储数据,所有没有字段 例8.7计算显示框的长和宽 5

5 接口声明 ▪ 接口声明的基本形式如下: [接口修饰符] interface接口名 [: 基接口] { 接口体 } 一般为public 注意:建议接口名以大 写字母I开头 ☺接口如果声明在namespace中,则只能用public修饰 默认为internal,不能用其他访问修饰符 ☺接口不存储数据,所有没有字段 接口中声明的所有成员隐式 地为public和abstract 只能是接口 例8.7 计算显示框的长和宽

自定义接口 interface IPersonallncome 1、定义一个收入的接口 double Income get; void DisplayIncome(); 3 2、在能计算收入的类实现该接口 class Manager:Employee,IPersonallncome 3、不同的类计算的方式不同 /经理收入的实现方式 public double Income get return Salary Bonus; public void DisplayIncome() Console.WriteLine('"{o,是一名经理,总收入{1",Name,Income); 6

6 自定义接口 interface IPersonalIncome { double Income { get; } void DisplayIncome( ); } class Manager : Employee, IPersonalIncome //学生收入的实现方式 public double Income { get { return subvention + scholarship + grants; } } public void DisplayIncome() { Console.WriteLine("{0},是一名学生,总收入{1}", name, Income); } 1、定义一个收入的接口 2、在能计算收入的类实现该接口 3、不同的类计算的方式不同 //经理收入的实现方式 public double Income { get { return Salary + Bonus; } } public void DisplayIncome() { Console.WriteLine("{0},是一名经理,总收入{1}", Name, Income); }

接口 接口声明 接口成员 接口实现及继承 接口和抽象类的区别

7 接口 接口声明 接口成员 接口实现及继承 ★ 接口和抽象类的区别

接口的方法成员 publie-void Displaylncome(); 接口成员 ■接口成员声明不能包含任何修饰符 ■只能包含成员的签名(返回值类型+方法名+参数列表) ■不能包含任何静态成员 8

8 接口的方法成员 ▪ 接口成员 ◼ 接口成员声明不能包含任何修饰符 ◼ 只能包含成员的签名(返回值类型+方法名+参数列表) ◼ 不能包含任何静态成员 public

接口属性成员 ■属性可以在接口中声明: ·不能加修饰符 ■属性的访问器没有方法体 ·只是通过get和set指定属性的访问类型 double Income get; 9

9 接口属性成员 ▪ 属性可以在接口中声明: ◼ 不能加修饰符 ◼ 属性的访问器没有方法体 ◼ 只是通过get和set指定属性的访问类型

接口索引器成员 语法格式: ·不能加修饰符 ■属性的访问器没有方法体 ■数据类型this[索引参数表]{get;或set;}; 10

10 接口索引器成员 ▪ 语法格式: ◼ 不能加修饰符 ◼ 属性的访问器没有方法体 ◼ 数据类型 this[索引参数表]{get; 或set;};

共18页,试读已结束,阅读完整版请下载
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档