《接口抽象类》ppt课件

《接口抽象类》ppt课件

ID:26941925

大小:318.01 KB

页数:14页

时间:2018-11-30

《接口抽象类》ppt课件_第1页
《接口抽象类》ppt课件_第2页
《接口抽象类》ppt课件_第3页
《接口抽象类》ppt课件_第4页
《接口抽象类》ppt课件_第5页
资源描述:

《《接口抽象类》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第八章接口目标接口的声明接口的成员接口的实现接口的继承抽象类体验设计主板、网卡、声卡三个类和一个PCI接口。通过它们的对话说明接口的作用和功能。接口声明[访问修饰符]interface<接口名>{//声明主体}例:interfaceIControl{voidPaint();}publicprotectedinternalprivate接口的成员可以是方法属性索引器事件接口名称一般都会以大写的I开头,表示为接口类型。接口成员2-1接口的成员包括从基接口继承的成员和由接口本身声明的成员。接口的成员必须是方法、属性、事件

2、或索引器。接口不能包含常量、字段、运算符、构造函数、析构函数,也不能包含任何种类的静态成员。接口成员2-2所有接口成员都隐式地具有public访问属性。接口成员声明中包含任何修饰符都属于编译时错误。例:publicdelegatevoidStringListEvent(IStringListsender);publicinterfaceIStringList{voidAdd(strings);//方法intCount{get;}//属性eventStringListEventChanged;//事件stringth

3、is[intindex]{get;set;}//索引器}接口实现接口可以由类和结构来实现为了指示类或结构实现了某接口,在该类或结构的基类列表中应该包含该接口的标识符。例:interfaceICloneable{objectClone();}interfaceIComparable{intCompareTo(objectother);}classListEntry:ICloneable,IComparable{publicobjectClone(){...}publicintCompareTo(objectother

4、){...}}接口成员访问接口成员是通过I.M形式的成员访问表达式和I[A]形式的索引器访问表达式来访问的,其中I是接口类型,M是该接口类型的方法、属性或事件,A是索引器参数列表。多义性2-1对于多重继承接口,当两个或更多个不相关(互不继承)的基接口中声明了具有相同名称或签名的成员时,就会发生多义性。在所有情况下,都可以使用显式强制转换来解决这种多义性。例:多义性2-2interfaceIInteger{voidAdd(inti);}interfaceIDouble{voidAdd(doubled);}interf

5、aceINumber:IInteger,IDouble{}classC{voidTest(INumbern){n.Add(1);n.Add(1.0);((IInteger)n).Add(1);((IDouble)n).Add(1);}}同名方法声明同名方法声明多义性解决接口继承2-1接口可以实现继承,而且还可以实现多重继承。例:interfaceIBase{voidF(inti);}interfaceILeft:IBase{newvoidF(inti);}interfaceIRight:IBase{voidG();

6、}interfaceIDerived:ILeft,IRight{}classA{voidTest(IDerivedd){d.F(1);((IBase)d).F(1);((ILeft)d).F(1);((IRight)d).F(1);}}接口继承2-2当接口方法被映射到类中的虚方法上时,从该类派生的类若重写了该虚方法,则将同时更改该接口的实现。例:interfaceIControl{voidPaint();}classControl:IControl{publicvirtualvoidPaint(){...}}cla

7、ssTextBox:Control{publicoverridevoidPaint(){...}}调用:Controlc=newControl();TextBoxt=newTextBox();IControlic=c;IControlit=t;c.Paint();t.Paint();ic.Paint();it.Paint();抽象类抽象类也必须为在该类的基类列表中列出的接口中所有成员提供它自己的实现。允许抽象类将接口方法映射到抽象方法上。interfaceIMethods{voidF();voidG();}abst

8、ractclassC:IMethods{voidIMethods.F(){FF();}voidIMethods.G(){GG();}protectedabstractvoidFF();protectedabstractvoidGG();}interfaceIMethods{voidF();voidG();}abstractclassC:IMethods{pu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。