重学面向对象,体会设计模式

先上图(学长今晚讲得好激情,就像哈佛大学cs50的老师~~~~)

图一让你明白,在Java帝国,你有多么渺小

 

回忆一下学长讲课的思路~

Driver这个类里面封装了很多各种各样的方法,包括接学生回家,包括开车的时速,里面包括了,司机本身的一个职责,以及车的一个功能,但问一个问题,如果今天司机的大巴车坏了,他想用中巴车载学生回家,那么是不是要在这个臭长的玩意儿里面改改改,又因为它太臭长了,所以比如不止你司机可以开车,我小学生也可以开车,开碰碰车,你司机开中巴车,大家都可以开车,所以开车是大家都可以实现的一个共有的,抽象的属性,那是不是可以提取出来呢,那么开什么车,车的时速是多少,也无定论,那么是不是又可以拿出来讨论一下呢?我们发现哎,把这些可以很灵活的东西,都放在一个很死板,很臭长的牢笼里,很限制他们的发挥,于是,我们试图将它们挨个抽取出来放着

好的都放好了,但是东西多起来,就显得还是有点儿杂乱无章,这时候,我们就要想办法让他们产生一种联系,这时候就涉及到这节课的一个核心,继承,这节课的继承,不是学校上的,简简单单的子类继承父类,调用父类,这个大家都会,没必要拿到这节课说,所以,此继承非彼继承,当然也和父与子有一定关系,试着想一个逻辑,是不是有了工人,你才会去想,是什么工人,接下来便有了司机,有了司机,你又会想是好司机还是坏司机,司机是谁定下来之后,你又想,司机开的是兰博基尼还是宝马这时候,这个“继承”就会实现一条业务链,整条业务链通过继承串起来

好吧我搞不了链子,那就想象一条链子把它们依次串起来,好司机,它就可以串好的DriverWork,不好的司机,我也可以再写一个不好的DriverWork上去,接着,有个CarDriver我就可以用它来选择我喜欢的车车~~~,这句话说的就是这个按照业务链条这个逻辑来继承的一个好处,就是把一个大东西细分成一个个接口,实现类,按照生活经验,业务逻辑串上去

 

做作业了~~先到这吧

posted @ 2023-10-29 22:29  糖子哥  阅读(6)  评论(0编辑  收藏  举报