面向对象

面向对象

面向对象(C++,java,c# 不以函数为中心,以类和对象为中心) 类
面向过程(C 以函数为单位把代码组织起来) 函数

面向对象的语言比面向过程的语言开发效率更高

面向对象:
什么是对象(object)?把数据和行为有机的结合在一起。
对象=数据(数据类型)+行为(函数)

伪代码解释:

	定义一个洗衣机:
		功能上:洗衣服
		外观:类型(滚筒,波轮)
				品牌(小天鹅,海尔)
				长宽高
				型号
C语言描写:
struct     洗衣机
{
		int  nWidth;
		int  nHeight;
		int  nLength;
		int  nType;//类型
		int  nBland;//品牌
		};
		//与上述中文的描述相比 缺少功能(洗衣服)
void   洗衣服(洗衣机,  衣服)  		//定义一个洗衣服的函数
{

}

洗衣机   海尔洗衣机;   //定义一个海尔洗衣机
洗衣服(海尔洗衣机,  脏衣服) 			//调用洗衣服函数



缺陷: 洗衣服和洗依机间的关联不够强烈(应该是洗衣机本身就具有洗衣服的功能)
假如定义一个      冰箱  海尔冰箱;
				 洗衣服(海尔冰箱,  脏衣服);    //实际上冰箱不能洗衣服,如果能强转话算编译通过,但是实质上已经出现了错误


C++语言的描述:
struct     洗衣机
{
		int  nWidth;
		int  nHeight;
		int  nLength;
		int  nType;//类型
		int  nBland;//品牌

		void   洗衣服(衣服);
		};
洗衣机    海尔洗衣机;
海尔洗衣机 .  洗衣服(脏衣服)//这就表达出了 洗衣服是洗衣机的功能

//这时候定义一个			冰箱		海尔冰箱;
//						海尔冰箱 . 洗衣服(脏衣服);
//就不会通过,因为冰箱本身不具备洗衣服的功能,在写代码的时候就不会出现      
//void  洗衣服(衣服);  的函数。

所以C++ 语言的描述就保证了函数的正常执行。

其中,对象为:海尔洗衣机,海尔冰箱。类为:洗衣机,冰箱(这种既包含了属性又包含了功能的这一种描述就是类。)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值