00:00
那下面呢,我们把这个叠加特质的细节给大家进行一个简单的整理和说明。所以看。特质的声明呢,是从左到右没问题,刚才我们已经证明这个事了。第二点开拉,在执行叠加对象的时候,首先会从后面的特色开始执行及从右向左。好,反过来。那么开特质如果调用super,它就调super的时候呢,并不是表示调用副特质的方法,而是向前继续找到特质及向左边。如果找不到才去。调用复特制的,这个采取复特制查找。啊,那么第四点,如果想调用具体的特质,比如说老师那不行,那你到这地方,我就我就想调用我这个。一个具体特质,我不想让他这我要打破它这个关系也可以,那就是说如果你想调用具体的一个特质呢,可以通过这个泛型的方式来制定。
01:00
啊,翻型我们后面还有个章节啊,啊,这个scar的泛型更加的强大啊,更加强大,有些符号你都看不懂啊,Super特质第二,也就是说在这里面呢,我们加一个特质名称即可指定这个东西,这个就是这儿,就是我们说的泛型,其中泛型有个要求就这地方啊。就这个地方。他有一个要求,什么要求呢?这个地方这个特质必须是该特质的直接超类类型。就说你你可以去指定,但是呢,你你不能说跳着指。你必须是他的直接操练的类型,那我举个例子,我们就以还以刚才这个例子来走啊,同学们注意听,那同学们来,我就说一下这个第四点打开它。我们还在这个代代码说话,比如说我们这有个fire。FAIR4,我我就说是这次呢,我想干什么呢?我我不想让用这个默认的机制,我就想让他在这直接指定我写一句话。我不删掉它啊,我这写一句话。
02:02
如果,如果我们希望,我们希望直接调用,直接调用什么呢?DATA4的iner的方法。可以指定,可以指定如下,那怎么写呢?Super。中括号里面写上代塔式点insert OK,那现在呢,我把这个ID传进去,那同学们看到啊,当我们这样写的时候呢,这个关系就变了,他就直接去执行调用这个东西了,来我们来再来分析一下,这个时候执行顺序变成什么了啊来走一个。啊,那这个时候呢,呃,我们我们就运行一下就可以了,前面这个顺序不变,构建顺序没有任何影响,但是执行顺序首先找F4。找发四过后找到它了,找到它就执行项文件。向王家过去,Super好,这个super他明确指定走代塔市了,那就不会再到这面去看了。
03:02
他就直接走,走那个呢,走他的这个直接超累,那么代塔四是什么呢?代塔40这个东西,于是他就直接自己插入数据,这句话就完了,也就是说它就只有两句话,就是第一句话是像文件,第二句话是插入数据,什么什么好,我们来执行一下就可以了,啊,我也这个地方大家看一下就OK,执行代码,我们看到这个结果呢,跟我们想的是完全一样的。但是同学们注意,这有个需要同学们了解的,就是说你在这个地方指定这个data呢,人家是有要求的。我这地方也有整理啊,这里说明一下说明。说明什么呢?就是super。这个DATA4。这个地方填的内容。就这个内容这边这个这个类名啊,这个问号的这个这个类型必须是当前的当前的这个这个特质的特质的直接直接特质负特质,你负特质负特质。
04:04
啊,或者说你理解成它的负这个超累也是可以的,因为我们讲过特质本身呢,也包含这个类的概念,好,所以说有些人说,诶直接的这个超了也可以,那么你看我改一个它就不行啊,比如说这个DATA4,我把它改成什么呢?你看data式又继承了OPERATOR4,我直接改成OPER4,你看这个结果会怎么样?好,但我一改。好,从语法上来说,同学们好像看,诶没报错呀,但是我一执行,我们可以看到这个结果,就会出现一个提示信息,好,告诉你了,他说offer does not name a parent class,他说不是这个,呃,FA4的一个parent类。啊,它直接就叫负类了,好,所以说呢,这点大家要注意这个语法的区别,好,我就再把它改回来啊同学们再改回来,好,那到此呢,这个第四个细节咱们就说完了。最后我要请同学们做一个练习题,那么这个练习题呢,我改一下这个对象构建混入的顺序,要求同学们说出结果,好,我现在来改一下,我找一个同学啊,看看这个输出结果是什么。
05:15
那么我待会儿呢,要请同学说一下这个东西,好V,我还是这样混入,来各位同学做一个小小练习题。好,我们来做个小小的练习题。练习题练习啊练习题,练习题呢,我这样写一个,把这个粘过来,然后我把这个颠倒一个顺序。我颠倒一个顺序,位DB2 DB是。好,然后呢,我们这边VR一个啊,比如说MYCQ。四啊,上面已经有个MYS了啊,MYSL4吧啊MY4,然后我我们来执行一下这个东西print啊,我就直接调用MYSQL4 MYSQL4诶MYCQL4.insert给他传一个999。
06:10
好,现在请同学们啊,呃,这个代码因为比较多,他可能看不出来,就说我现在要求同学们说出它的构建顺序和它的这个自行顺序啊。哪个同学来试着说一下。好,因为这段代码呢,你不没法全或者展现出来了。好,这样子啊,我找一个咱们学的不错的同学啊,你让我看到的代码,我们来一起分析,好,我随机的抽查一位同学,咱们找一个班子班找一个班长哈,找个班长,班长一般都学的比较好一点。来李那个高班长,去找班长吧,来,班长你说一下。来,班长,你说这个构建顺序是怎么样子的?好,呃,先是找哪个你说。
07:02
是不是先找84是吧,所以说它应该是找到824。Fire,是这句话马上执行吗?这句话马上执行吗?是不是马上之一呢?是不是不能马上执行呢?是不是他要去找他的副特制啊,诶是不是就找到代四了。是找到了计划马上执行吗?也不是不是,还是找op事好,班长你这个接着说。第一个说完了,第二个应该是什么?构建数据。啊,是德塔四过来的是吧。好,这个地下式好,那么下一个是什么呢。菲亚四,好,说的很好啊,亚四找到了。啊,凡四找完了以后,呃,然后还有什么输出吗。这个这个就构建完了。
08:01
应该是找DB4了吧,DB4是不是在这呢?那又怎么办呢?好,是不是DB,呃,就直接输入DB,因为这个代塔式已经被构建过了,好所以说这样就写好,这个就说完了。好,构建顺序,说完了执行顺序。职业术学院那个班长来说一下。执行顺序好,执行顺序,你先说一下这个规则吧,你把规则说一下,应该先看哪个。是不是应该先看DB4里面的一。好,首先我们到DB4。DB四面insert是不是应该先执行像数据库?好,这个是先执行一下数据库。好像数据库里面呢,他遇到了一个super,请问这个super是找四吗?还是找谁?哎,这个这个书这方不能看,带他试试吧,应该看。
09:03
FIRE4,所以我现在要到四里面去找,FIRE4是在哪里呢?FIRE4是在这是不是它就像文件fair very good啊像文件。好像文件好,这边我们写一个像文件。Or像文件?二项文件。那么像文件完了以后,呃,这边像文件突然出现了一个super,这个它就是这个你怎么办还要去,哎,这个是不是就不用往往左边看了,其实往左边看也没有了啊,其实这个地方刚好就刚好就吻合在一起了,那么这个刚好就等价啊,其实这个时候相等的时候,其实你不写跟他刚好就相同,因为你左边没有了。那这个时候他找代塔式,代塔式在哪里呢?代塔式在这里,好,它就输出了项,插入数据等于多少?好,大家请坐下啊。好,这个应该等于多少呢?我传进去的999,好我们就分析完了啊,我就做一个练习,后面我就不再讲了,好,同学们看这个执行的顺序跟我们想的是不一样,为了以示区别,我在前面先打一个分隔符,好咱就讲一次,后面就不再多说了,好,我们运行一小把。
10:09
我们运行完了,我们看这个结果跟我们想的是不一样的。OK。哎,我们看看99OPERATOR4DATA4FAIR4DB4像数据库,像文件插入没没问题,好这个关于这个细细节这一块呢,我们就说完了啊,关于这个叠加特质,大家需要注意的就是这些内容。啊,就这,当然后面还有地方呢,我再说啊好,这是叠加数,叠加这个特质的一个细节,给大家做了一些说明,来吧,整理一下。好,这个就整理一下代码就OK了啊同学们来走,我们插入一个箭头,诶,然后呢,特制的孙平第一个,哎,第二个。对吧,第三个,第三一个好,最后一个AOK,然后这边有个要求大家注意看到啊,尤其是在这大家一定要注意,它是必须是超累的啊,你不能说我随便指一个,我想让他往哪跑就往哪跑,不行,因为你那样做的话,就打破了这个基层关系了,好这个做完了之后,我们做了一个练习题啊,练习题就是。
11:17
一个。一个练习题,然后呢,我们改变了一下它叠加的顺序,然后让同学们来做了一个小练习来写到这里来。那这个小练习呢,我就直接拿过来给他看一下就行了,比如说这个案例啊,这个案例顺序就是如此这般的。好,给他来一个插入一个小标杆。好,同学们,关于叠加特质的细节呢,我们就先聊到这里。
我来说两句