java为何面向对象?

1.何为面向对象?

     假如一个公司要完成一个产品。产品的功能设计是一个很复杂的任务。如果是面向过程,他的设计路线可以是这样的:对每一个被设计的功能具体到每一步该如何实现,设计其代码。比如把一个箱子从一楼搬到三楼。可以这样实现:抬起箱子,行走到三楼,放下箱子。如果是面向对象设计可以这样:对楼层,对箱子,他两都是一个具体的对象。箱子可以换成别的东西吗?可以。楼层可以改变吗?可以。如果是面向过程编程,这两个数据也是可以改变的。例如项目要求实现路程的计算,代码分别可以是这样的

       下为c语言(c语言也可以面向对象,因作者水平有限所以只选择了c)和java语言

#include<stdio.h>
int main(){
    double height;//物体重量
    double min;//最低的楼层
    double max;//最高楼层
    scanf("%lf %lf %lf",&height,&min,&max);
    double k;//消耗体力系数
    scanf("%lf",&k);
    double consu(double height,double min,double max,double k);
    double consume = consu(height,min,max,k);
}   
double consu(double height,double min,double max,double k){
//实现计算
}
class louceng{
//一栋房子或者楼层该有的属性:包括但不限于各层高度差
//对楼层高度计算的代码块
}
class thing{
//一件物体的属性,包括但不限于物体重量
}

由以上代码可见面向过程和面向对象都能完美解决任务需求。甚至面向过程不需要设计类别,更加高效。但当需求变广,对一个目标需要进行多次操作面向对象编程,他的代码块将会变得越来越冗杂。比如增加物体的具体属性,增加属性,操作的复杂度将会变得很高。

2.面向对象其实是一种思维方式,但不同的语言框架能让这种思维或易或难的体现。

      java所具有的封装,强化了面向对象的属性。继承使面向的对象更具体,更易扩展。

//未完待续。。。。。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值