温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
嗯呃,再次来解释一下这个图上的我们说的这个list,它的一个背后的意义,现在是是不是懂了啊,就这个ing post它的一个意义,它就是用来干嘛的。做一个呃缓存啊,因为将来有一天我要去执行他们的负类方法啊,那么一开始我们把它找出来了,执行完了之类方法,如果你们把它存起来,将来我我再去找一遍吗?那肯定是不现实的,再去找一遍对不对,我还不如先把它存起来,就是为了将来来执行他的分类方法,所以这个就是我这里写的这个注册的意义,不知道你有没有看懂啊,嗯。好,站在整个spring论角度来言的话,现在所有的实直接实现子类的,子类方法也好,附类方法也好,全部执行完了,就是绿色的,现在都搞完了,就指令方法,分类方法都没有了,他就根本就没有了,全部都被执行完了,那么你是10不做的,你接下来是不是要执行灰色的,执行这边的,那么执行灰色的他同样按照10不的调调来的话,他应该跟这个原则是一样的,首先执行API注册的,那么怎么来执行API注册这个B对不对,这个B同学们还有印象,他存到哪里去了?来看一下源码,他说是一开始存在叫re,这个这个list史当中来,我们来看一下来,因为你一开始是通过API调用的,是传到这个list史当中呢,在这个list史当中的话,那么十分在这个地方进行了一个遍历,在这一方来编历之后的话,发觉如果你是一个负类的,那么我先不执行,比如说你是一个直接实现了负类的,我就先不执行,先不执行的情况下,先把它放到这个RI的possible这手当中来,那么你现在到了这一步,要来执行这个B的话,我就从里面拿出来不就行了吗?对不对?来看一眼代码,那我们看一它是怎么做的,来这里是不是就执行,我们说的正好代我们。
01:34
讲完了嘛,把所有的子类的负类方法执行完了,那么下面就是这行代码,这行代码是一样的,就是引我和并发process,但他为什么要写两行就这个方法调用两边呢?还是一句话,无论是子类方法还是负类方法,他们都要分批执行,我们刚刚是执行子类的负类方法,对不对,这是第一批,那么第二批的话,执行负类的负类方法,那么你看传是个log,这个里面有多少个,只有一个就是谁啊,就是我们这个B来。好,于是你看它传过去,把这个B传过来,从这里一调,那么就把这个BN执行完了,为什么呢?为什么先要最执最最开始执行这个API调用的这个B呢?为什么不执行其他的,我讲过,因为这种B它是最简单的,你是直接给到了人家词spring,对不对,你直接丢出来给了人家词,那词spring完了拿出来执行人就不像其他的,你像其他的这个A和1啊,我还要去扫描,还要去干嘛,还要把它变成对象,因为你这个A和1现在还没有实例化,对不对,你还是存在我们的整个什么spring这个b def map当中,它并没有存到单词当中,那我们也可以看一眼啊,你看吧,来啊,我们来看一眼,它并没有存在单词当中,那你往下走,你看这个single的map当中,Single object当中啊。
02:39
这个里面根本就没有A和1来,因为现在A和1还没有实例化,但是它存在这个B是map当中,这个是毋庸置疑的,因为我们前面已经执行过了扫描,还记不记得在哪里执行,我就执行这个CCPP的时候,执行这个方法的子类方法,执行这个类的指类方法是完全的扫描,并且把DF都扫描出来吧,我们这个图他也说了,这个A和1就在这个BD map当中,对不对?所以我们这里面呢,啊,也可以看一眼,看到就在这个里面来,这里面肯定有A,但是他并没有实例化,是这个意思吧,所以说人家先执行什么API提供的是最简单的来往下走,那么这样子我们就打赢了一个B,讲道理来就B的它是一个负类,直行的是负类的方法,因为B没有子类方法。
03:15
好,那么就到此执行完了,这个什么样的呃,API.呃,通过API注册的一个什么样呢?负类的一个,呃,对象的一个possible测试的方法好。
我来说两句