Java中对于面向对象思想的理解

1. ① 与C语言面向过程不同的是,C语言中函数是主体,如果需要修改数据需要函数来进行修改,所以来说函数在C语言中是很重要的,基本上对于数据的操作都是这样的,但是有的时候不太方便,而Java语言面向对象的特点就解决了这个问题,面向对象的思想中把描述一个对象的特点的属性都封装在这个对象中,通过对象中的set方法来修改对象中的属性的值,通过get方法来获取当前对象中属性的值,也可以通过构造方法来对属性进行初始化的操作

所以来说Java中的对象封装的属性以及对于属性的一系列操作正好体现了当前对象的特点,像区间调度的问题,从控制台输入的数据一行表示工作的开始时间,另外一行表示工作的结束时间,但是题目中并没有说这些是有序的,所以对存储开始时间和结束时间的数组不能够对它们进行单独排序,因为有的情况下会打乱它们的顺序,原来在一起的一组工作经过排序之后不在一组了,那么这个时候就需要使用到我们面向对象的思想,把开始时间与结束时间封装在一个对象中,并且实现Comparable接口,规定实现类和重写compareTo方法,这样可以实现自定义的排序,这样对对象数组进行排序那么就不会乱了

② 分酒的这一道题目(使用bfs解决)也是使用了面向对象的思想,把当前酒杯中酒的状态和到达当前状态所经历的的步骤封装在一个对象中,这样我们在比较出当前状态与要求的目标状态一样的时候那么直接返回当前对象中的所经历的的步骤这个属性,所以在中间的过程很方便地对其进行了操作

③ 迷宫的这一道题目(使用bfs解决)也是这样,因为需要知道当前节点的横坐标,纵坐标以及到达这个节点经历的步数,所以自然就想到了面向对象对数据进行封装,使用一个内部类来进行对数据的封装,使用构造方法来对其进行初始化,这样在使用宽搜的时候加入队列的就是一个节点,通过弹出这个节点我们就自然知道了当前节点的所有信息,这样对于数据的处理就非常方便了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值