00:02
好,来下一个话题啊,我们来说一下这个病的一个高级配置啊,啊,说白了就是我们来说一下这个对象与并对象之间的,它是有一些关系的啊,我们来研究一下他们之间的这个关系。呃,有哪种关系呢?注意我们有两种关系,一种关系呢,就是继承,他们会有一种继承关系,而另外一种关系呢,我们叫做,呃,这个依赖啊,它有一种叫做什么依赖关系啊,大家不要看这个地方写了这么多东西是吧,其实特别简单啊,就是我不带着你挨个去看它了啊,你可以自己去啊看一看它,那么我所有的东西呢,都直接来给大家去讲解,好首先呢,我们来说一下病与病之间的一个继承关系,好,那我再去写一个package,我们就不用刚才的了啊,再来写一个现在我们要研究的是什么呀,研究的是一个叫做relation,就是关系的意思,那么在这个包下面呢,我再去念一个class,好,这个class呢,我就叫做地址吧。
01:04
可以吧啊,就叫做地址了啊,那么这个地址里面呢,我们简单写一写啊,比如说我写一个啊字符串类型的叫做呃城市吧,哪个城市是吧city,然后呢,再来写一个字符串类型的street是不是街道啊,对吧?啊就是它两个可以了啊好就拿两个来演示了啊哦,然后这个里面呢,我们加上这个盖赛的方法,好再加上我们的这个兔子圈方法能明白吧?诶再加个to群,好把这个写好以后呢,呃,我们再来去写一个配置文件,还是在SR在下面我们再去用一个spring的配置文件啊,我们就叫做spring减relationship假查描。OK,那么在这里面我们来研究什么呀?哎,并的这个继承关系啊呃,首先呢,我先去配置上两个病啊,大家来看一看,好ID我就叫做ADDRESS1啊class呢,就是我们的啊address,然后这里面呢,我们给大家写一下啊,通过这个property,好,我先做一个配置,比如说呢,呃,City好value呢,那我们就叫北京吧,好吧,写一个不写中文了啊来再来写一个,还有一个街道吧。
02:25
知道我们写一个什么呀,我们写一个这个长安街,长安街是吧,行吧,这个长安街吧,好长安街看到了吧,然后呢,我们再来去写一个病啊再来写一个病好adjust to,然后呢,它也叫北京啊,就城市呢也是北京,只不过这个坏了啊我不叫长安街了,我叫什么呀?嗯啊五道口吧啊去过没没去过,那你听说过五道口职业学院,听过没有没有啊啊哎,是叫五道头直学吧,是不是好像有是他这个是叫这个名字吧,知道这个现在叫什么名字吗?好像。
03:25
好多呢是吧,什么五道或什么什么什么学院是吧?好,现在都是最有名的清华北大是吧啊好吧啊这个大家说一下啊呃,去没去过这个地方没有是吧?啊现在我觉得可以去了啊啊晚上去白天就不要去了啊啊去干嘛呀啊,去武道可能干嘛小姐姐啊,可以啊,看来有这个道场的人啊啊是吧啊这个蠢蠢欲动了是吧?啊那在五一的时候你们就可以去武大看一看了哈啊其实也没啥啊,就是我去是为了。
04:14
吃饭啊,那你们去为了啥我就不知道了,然后大家不想喝酒喝酒啊,可以啊,那可以约一下哈来呃,我们来说哈,呃,现在呢,我们把这两个B呢,就给它写出来了,那么写出来以后呢,我们来看看哈,你说这两个B长得像不像,太像了是吧?啊,除了ID不允许一样之外,其他的你看一下class一样吧啊,甚至于它里面总共有两个属性,其中有一个就是一样的,对不对?那么现在我们就来想一个问题啊,假如说我这个并对象里面呢,有这个七八个属性大部分都是一样的,比如说有这个五六个都是一样的,其中就有那么一两个是不一样的,那么如果遇到这种情况的话呢,我们其实就没有必要说我非要把这两个病里面相同的那个东西呢,写上两次。
05:06
能理解这个意思吧,我可以让他通过继承的方式来完成啊,比如说你看诶我这个第二个币呢,我觉得说,哎呀,我这里面大部分的东西都是跟你一样的啊,那我就可以怎么着呢,我可以让我第二个病呢,去继承我上面的这个病,然后呢,我就可以把上面这个病里面相关的一些配置信息就给它继承下来了。理解吧,比如说你来看一下啊,我认为这个是一样的是吧,好不写了能不等吗?我就希望说,那我能不能把这个city从上面给我继承下来啊,没有任何问题,你看好了哈,怎么完成继承关系呢?注意在要继承的这个病里面,我们写上一个parent,就指定一下他的父亲谁呀,呃,这子一,这就完成了一个继承了,那么完成了这个继承关系以后呢,其实它就可以什么呀,它就可以从我的父病里面有了继承关系以后,这就是一个父病啊,这就是一个什么呀,子病,那么子病呢,就可以从复病里面去继承下来一些相关的配置这些了,那么其中像这个配置我就可以继承下来,甚至于像这个class我都能把你继承下来,你比如说你看我先把它去掉,是不是也没了?
06:27
对吧,那注意对于这个病来讲,我就要去继承他了,那么我就可以把它的class property啊,就是这个C都继承下来,假如说诶你这个也是一样的,那么这个你就不用写,都可以从它上面继承下来。其实呢,他也会把这个继承下来,只不过呢,继承下来以后,你是不是又重新给它复了个值啊,对吧,放到我们Java里面来讲的话,那就是一个重写了,对吧,覆盖或者是重写,好吧,那我们先来看一下这个效果,呃,那我就在我这个relation里面呢啊,我再去有一个解测试类啊,我们来写一个结测试类,好取个名字就是TS我们的relation,好吧,啊relation就是关系ELA啊好,这里面我们先来测试我们的继承,就是我们的啊,TS我们的继承啊,那么在这里面呢,我们先把这个容器的给它实例化一下啊,Application contact cx等于。
07:31
好,等于什么,你有一个是吧是吧,啊,这个都记住了吗?忘不了了吧,是吧,你要说今天把我课堂上所有写过的代码你都亲手去写一遍,这东西你想忘都忘不了,可能第一次看的时候还觉得,哎哟,这太太长了是吧,但现在你想忘都忘不了了,对吧,好点。呃,那么把这个容器给它初始化好以后呢,我们就来获取一下我们具体的这个比对象哈,大家来看一下CTS,呃,首先呢,我们三来获取第一个就是我们的一吧,好,address.class好,先拿到我们的第一个就是我们的ad re a好,先拿到它,然后呢,我们来做一个输出吧,输出我们的一啊来冒号加上我们的小战一。
08:29
然后呢,再来往下写,再获取一个two啊,等于CT x.get b,然后来输出一下这个就是吧,再加上我们的就不好意信号好我们来看一下啊。来选中它rise测试一下,哎,让大家先来看,呃,第一个的话其实没啥研究的,我们主要是看第一个啊,你看它首先既然它能通过什么,通过这个adjust这个类型,就是我们通过这个地方,我既然能通过这个类型获取到这个病,说明我当前所配置的这个病是不是也得是一个adjust类型的。
09:17
对吧,OK,但是这里面我压根就没有写这个class,那么也就能说明他肯定是把这个给他什么继承下来,好,同样我们还能从结果上看到它里面这个CT这个属性是不是也从上面继承下来的,对吧?其实这个也继承下来了,只不过呢,我通过五道口呢,把这个长按街又给他重新做了一个覆盖。理解了吧,哎,我又重新做了一个覆盖,好,那么这就是我们的一个继承关系,特别简单,好但是呢,在这个里面的话呢,我还是要给大家去说一下啊,说一个什么东西呢?大家注意,如果说啊,对于我的这个病来讲,他如果说单纯的就想被别的病去继承啊,也就意味着我们在Java中呢,不是有一个抽象类这样的一个概念吗?对吧?那么大家想想抽象类是干嘛的,是不是天生就是用来被继承的吧,对不对,你你别的事你是不是也重要呀,你能创建对象吗?不能你天生就是用来被继承的吧?好,那假如说我也想在我这个破里面去实现那个抽象类的一个效果,诶,那么我们就可以把它设置为一个抽象B。
10:30
怎么个抽象法呢?那么你只需要在这里面呢,通过一个叫做什么abstract,好abstra等于处往这一写,它就是一个什么啦抽象病了啊来听我讲,好等于处,那么就是什么,诶就是什么抽象病,那么如果你是一个抽象病的话,大家注意它是不能被不能被抽象对象的,也就意味着当才我这个病它是不能被创建对象的,所以说你看了啊,我加上他以后呢,我再回到我测试的这个位置,我再去测试一下就报错了。
11:09
你看下是不是出错了,为什么呢?他说我不能去创建你的这一因为什么呀,它的定义是要抽象的理解了吧,好,那么既然你都是一个抽象的人,那么大家来想这个class还有意义吗?没有,就对于他来讲哈,这个class还有意义吗?你都不能被实体化对象了,你说你写它有啥意义吗?我就说对于他来讲吗,就单纯的看他来说的话,这个class还有意义吗?没有的。对不对,哎,它就没有任何意义了啊,那么其实那么这个B的class呢,我们是可以给它省略掉的,理解吧,哎,就是不能被创建对象,也就意味着class可以省略不配置了,明白吧?啊,它可以省略不配置了,那么它省略不配置以后呢?那么看一下对于这个病来讲,他是不是就是单纯的去做一些什么简单的一些做一些什么配置的吧,就是对不对,那么也就意味着它就是来做一些什么,哎,通用的一些配置,然后对于我下面的这些病来讲,是不就可以去继承这些配角了呀,对不对,但是你要注意了哈,如果说它里面的class不写了,他得不得写啊,他必须就得写出来了,能明白吧,如果说他也没有class,他也没有class,那么你们就是没有组织的是吧?啊,你们就没有任何class?
12:41
那是肯定是不行的了,听明白了吧,哎,所以是它就必须要写上了啊好,那么我们来看一下,呃,对于这个现在来说,因为它是抽象的的,说它不能被时间化对象我们就不能再获取它了,而对于我们第二个病来讲,我们来看它还是可以的,对吧,就你第一个病是抽象的没问题,我依旧是可以把这个属性给他什么继承下来。
13:03
看明白了吧,哎,依旧是可以继承下来的,好,呃,但是大家注意了啊呃,那你说这个继承是所有的东西都能继承下来吗?不行吧,哎,对于什么,对于这个ID肯定是不能被继承的,然后呢,这个东西他能继承下去吗?不行,如果说我把你的这个抽象也继行下来了,那么它是不是也是一个抽象的,那它是抽象了以后呢,就不能被实例化对象了,但是我们刚刚看到这个是不是依旧能把这个对象获取到吧?啊也就意味着大家注意了啊,继承呢啊继承是什么可以啊啊从什么呀复币中来继承一些什么呀,配置,但是呢,有一些你是继承不了的,但是什么像这个ID啊,以及这个tract,以及我们后面呢,还会再去讲一个叫做奥fair啊,也会讲一个这个奥fair是不能被继承下来的,听明白了吧,像这个东西我们是后面要去给大家去讲的,它是不能被继承下来的,而像我们这个ID啊,像这个abstra也是不能被继承的,除了这些之外的,像其他的像这个,呃,你写的课拉。
14:14
Pass呀,像这个property啊,这些配置呢,都是可以被继承下去的,听明白了吧,能听懂了吗?OK,好,那么大家下去以后呢,你可以啊,啊挨个去看一下我们这个啊,Word文档里面啊,都给大家去提到了啊,什么子病啊,什么复病啊,怎么完成继承啊,然后呢,继承的时候呢,比如说像这个复病的可以作为配置模板,也就意味着它只是什么作为啊,也可以作为这个病的时令,如果是一个模板的话呢,我们就可以把它设置为抽象的专用来什么被继承的,听懂了吧,然后呢,并不是所有的都能被继承,像这个autobe oftra等,它是不能被继承的。听懂了吧,哎,等等一些啊,都都给大家提到啊,好,那么大家呢,要把我课上掌握的这些东西呢,都理解了啊,这就是我们B的继承关系。
我来说两句