从C++浅析面向对象的特点

C++作为一个面向对象的语言有四个特征:抽象、封装、继承、多态。

【封装】

C++中引入class来将一个类的属性和行为装进一个“黑匣子”内,这个黑匣子里各个成员默认属性是private(这也是class区别于struct的一个重要特征)。而我们可以将某些可以公开的成员的属性设为public或protected,那么我们在主函数中就可以调用class里的public成员,而class的派生类则可以调用class里的public和protected成员。

封装体内的成员是互通往来的,甚至成员函数调用数据成员时其参数括弧内都不用声明。

举例:

class Circle {
public:
	double radius;
	Circle() {
		radius = 3;
	}
	Circle(double radius1) {
		radius = radius1;
	}
	double getArea() {
		return radius*radius*PI;
	}
};
我们将这个类封装起来后,那么在主函数内就可以直接通过其实例化对象调用这个“黑匣子”里的public成员。

【抽象】

类的抽象其实与类的封装是紧密相关的(通过类的抽象即可完成类的封装)。

类的抽象:将类的实现与使用分离开(可以感悟封装里的最后一句话);类的描述由类创建者完成(程序员);使用者不知道类是如何实现的(类的实现细节藏在黑匣子里)。

【继承】

class的属性和构造函数传承给它的派生类(目的是避免重复撰写代码),派生类内可以增加自己所需的成员。

【多态】

不实现多态:不同对象对于相同的消息作出相同的响应。

一般情况很少用到这个,详细内容可参考相关资料。

【小结】

由上面的阐述,我自信面向对象的编程语言的特点已经深入人心。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值