首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

Class与Interface,该如何处理

2012-08-14 
Class与Interface为什么在类里可以实现的方法、属性、索引、事件等功能,还要有时先声明一个或多个接口来定义

Class与Interface
为什么在类里可以实现的方法、属性、索引、事件等功能,还要有时先声明一个或多个接口来定义这些一整套的功能,然后通过类去继承这些接口并去实现这些接口,难道仅仅是因为通过接口可以很明确的看出这些原本可以在类中实现的方法、属性、索引、事件等功能吗? 其实当在类中去继承这些接口实现时,不是又重复了吗?(毕竟这些类原本就能完成这些,其实继承了这些接口之后,还是按照原来的这些这么实现完成的)

[解决办法]
你说的这种设计如果是放在小程序上那是没有什么异议的,因为小程序功能单一,想改的时候找找就能改代码了。但是做一个复杂庞大的大型应用程序,该程序的构架必须要确保以后的可扩展和可维护性,用接口是因为它是一种很好的面向对象的抽象性特点和多态性特点和代码复用特点,这种特点的好处就如上所说的:可扩展和可维护性强。 设为interface里的方法函数,都是具有一定的通用性的,这种通用性是指:在不同类型中,他们都具有的一些共同点,我们通常把这种共同点提取出来,做成单一的interface. 到时候,不管是人类,鸟类,鬼类,树类,他们都是有“吃”这个动作的,只是吃的东西不同而已,吃饭,吃虫,吃人,吃二氧化碳。虽然吃的不同,但是他们都是具有吃这个特性,我们通常把这些特性提取出来,做为接口。 只要以后有 什么类 具有吃的动作,我们都可以 继承 这个接口,这样就符合软件抽象性特点。
[解决办法]
多态是面向对象的牛逼特性,木有多态C++就重度残疾了。
[解决办法]
顾名思义,接口就是用来将不同的东西按照同样的方法来使用
十个类可以继承自同一个接口,将同样的功能在不同的环境下实现,使用这个功能的类只需要直接调用接口就可以,不必在乎现在是什么环境以及这个接口后面是这十个类中的哪一个

热点排行