词条信息

admin
admin
超级管理员
词条创建者 发短消息   

相关词条

热门词条

更多>>
什么是端口?到底是做什么的呢?
端口一般指两种,一种是硬件比如路由器或者交换机的插网线的端口,一种是软件的逻辑的概念,比如http的80端口!...
7种进阶方法让你快速测试端口连通性
Ping是Windows、Linux和Unix系统下的一个检查网络连通性的命令工具,对于大部分互联网用户来说很...
电脑开机,总需要按F1,是什么原因造成的?
一.主板掉电这个说法是行业内的叫法了,一般是主板的CMOS电池没电了导致的。也是最常见的一种提示你按F1的提示...
社保降费对个人有什么影响?
下调城镇职工基本养老保险单位缴费比例是政府给企业发的一个大红包,特别是对于企业来说是一个利好,但是对个人来说有...
车辆“出险”对下年保费的影响,到底有多大?
【出险对交强险的影响】【出险对商业险的影响】车辆“出险”对下年保费的影响,到底有多大?这里有必要先提下车险第三...

精选图集

更多>>
简易百科旧版 >>所属分类 >> 程序开发    C/C#   

C语言的继承性

标签: C 继承性 程序开发

顶[0] 发表评论(0) 编辑词条

  继承性是面向对象程序设计语言的主要特征之一。在C++中,继承性是通过允许一个类把另一个类放入到它的说明中实现的。继承性允许建立类从一般到最特殊的层次,这个过程要求首先说明一个基类,基类说明了那些由派生的所有类共有的性质,代表了最一般的描述。由基类派生的类通常叫派生类。一个派生类包括“样板”基类的所有特点,且增加了派生类专有的性质。为了说明它是如何工作的,下面的例子说明了一个给不同类型的建筑物分类的情况。 


  building类的说明如下所示,它用作两个派生类的基类: 

class building 

{int rooms 

int floors; 

int areal 

public: 

void set—rooms(int num); 

int get—rooms(); 

void set—floors(int num)l 

int get—floors(); 

void 8et—area(int num)l 

int get—area()1 

}; 


  就这个例子而言,因为所有建筑物都有多少个房间、一层或几层楼以及总面积三个共有的特性,building类的说明包含了这几个特性,以set开头的成员函数设置专有数据的值,以get开头的成员函数返回它们的值。 


  现在可以用建筑物的这个广义定义描述特殊类型的建筑物的派生类了。例如,下面是名为house的派生类,注意building是如何被继承的。 


//house是基类building的派生类 

class house:public building 

{int bedrogms; 

int baths; 

public: 

void set—bedrooms(int num); 

int get—bedrooms(); 

void set—baths(int num); 

int get—baths(); 

}; 

继承的一般形式是: 

class新类名:[access3基类名 

{ 

//新的类体 

} 


  其中,access是可选的,如果出现,它必然是public、protected或private。若缺省,贝0认为是私有派生private。使用public意味着基类的所有公有元素在继承它的派生类中也是公有的,保护成员能被继承。 


  在上面例子中,类house的成员存取类building的成员函数,就像它们是在house中说明的一样。但是,house的成员函数不能存取building的专有部分,这点很重要。尽管house继承了building,但它也只能存取building的公有部分。在这种方法中,继承并不妨碍OOP所需要的封装性。 

  请记住,派生类能直接存取它自己的成员函数和基类的公有成员函数。

 

 

附件列表


按字母顺序浏览:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

→我们致力于为广大网民解决所遇到的各种电脑技术问题
 如果您认为本词条还有待完善,请 编辑词条

上一篇什么是汇编语言
下一篇常见的计算机语言有哪些?

0
1. 本站部分内容来自互联网,如有任何版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
2. 本站内容仅供参考,如果您需要解决具体问题,建议您咨询相关领域专业人士。
3. 如果您没有找到需要的百科词条,您可以到百科问答提问或创建词条,等待高手解答。

关于本词条的提问

查看全部/我要提问>>