温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
同学们,我们继续接下来给大家说一下原子引用这个知识点,那么下面我们来看一下API,这有原子布尔型,原子整形,原子整形数组,还有原子浪形等等等等。那请问除了有整形long型,可不可以我们自定义的类型呢?比如说我想有个原子order,订单类型,原子user用户类型,原子person或者等等等等,也即你这个auto我们也明白了,底层是UN类,结合我们的自学的思想。那么现在对。整形这个数字可以有原子整形能不能有其他的原子类型呢?答案是可以的。同学们,我们呢,回到我们的脑图。这个是原子整形,可否有其他类似于这样对吧,原子不原子订单,那么所以说。在guc里面,他给我们贴心的设计了一款原子的一个。算是包装类,类似于这样的一种实现,那么它呢,这叫auto reference原子引用,这干了个V什么意思啊,泛行了以后你可以封装任何对象做一种原子引用类型,好,那么其他的只要你套上了奥这么一个东东,那么这些API什么的,I加加get什么的完全都可以使用,底层原理还是那堆Una好,那么同学们。
01:23
我们简单的来演示一下这个API。首先我们在这个里面有一个最简单的user这个类名字和年纪好,我们这呢就是m reference来吧,那么m reference,那么现在我们就是user,那么来。OK,没问题吧,相当于说这个原子引用只能装user类型,就是我们上面所定义的这个,好,那么这个user类型呢,我们就过来吧,这个呢是张三。那么名字呢,就是我们的张三,然后呢,年纪就是22岁,OK,那这个呢,我们简单一点。
02:04
李四啊。来吧,名字呢是叫李四,年龄呢,我们这的是28岁,好了,我们来吧,现在我初始化,我只是说同意你装一个user的原子引用类型,但是这个user现在有两个是张三,是李四呢,所以说我们先。调用API set没问题吧,先把张三装进去,那么好了,现在这个张三这个里面大家请看set以后,那么这整个。Reference这个原子用类里面它呢装的就是张三,那么来吧,和之前一样,那么是不是也是我们的什么compare and set,那么我们期望值假设这个对象是张三,如果是的话,修改值就变为李四,那么同学们这一波没问题吧,那么来吧。搁到这儿。点get,那么得到user,那么得user to string,好,那么同学们我们先来跑第一组,来看一下,现在我们后面这一行应该打出的是张三还是李四,结果不言自明,我装的是张三,现在我们用compare and set,像操作我们的原子类out,呃,原子整形类一样,那么所以说希望值是张三和原有的是一样的,修改为李四啊,所以说现在获得它的值的话,那么就是我们的什么。
03:23
处。CS比较成功,打出来这个user就是我们的李四,好,我们再来一次,那么同学们和前面的原子整形一样,只不过现在换成了一个新的类型叫user,那么第二次啊,实际值已经变成李四了,我们还是拿着老观点,我们希望他是张三,但抱歉人家现在实际值是李四啊,可不是这个CS操作,那么就是什么force,那么force了以后本次操作。挂了,那么得到现在当前的最新值啊。多少还是这个例子,OK,好,那么同学们这个呢,就是我们的一个什么原子引用类型,相关一个API调用的讲解,那么一定要。
我来说两句