温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
那接着来我们再往后说啊,哎,这个呢是这个四,然后接着看这个五,哎五的话呢,叫钻石操作服的使用升级,哎钻石操作服实际上就是我们所说的这个泛型这一对监控号的问题,那关于它的使用这呢,提到一个点,说在这个八当中啊,说如果呢,你这个叫钻石操作符和我们这个匿名实现类呢,如果要共同使用在八里边呢,是不允许的。呃,他会报这样的一个错误提示信息,说在酒里边呢,就可以这样做了,呃,这块我们提一下,这是这个特性五啊,嗯,那这块呢,我们还回到最初的这个叫JAVA9的这个测试这块吧。这个呢,是咱们,诶那会儿讲的那个叫JLL的手提的这个事儿啊,然后下边呢,我们说这个叫诶JAVA9的一个,诶特性五啊,哎钻石。哎,操作服的一个算是叫一个升级使用了,成这块我们写一个例子。
01:01
行,这呢,咱们拿谁举例子呢?咱们就拿这个叫comparable compar了。嗯,Comparor,好啊,这里边我就比如说就写成object类型的了,哎后边呢,我们的一个come等于new一个,嗯,Comparor,哎这样的方式啊,那这样的时候,哎,我们在这写的,那这块呢,我们就写了个object,咱们之前讲这个说JDK7的时候呢,说提到过这个事,说你要是后边这块扭完以后,这个发型跟他一样是吧,说这个是不是可以省啊。哎,这阵容看我们省了,省了以后我们看这容没报错,没报错的原因是因为咱们现在所在的这个环境的原因,咱们这个DAY10,呃,D13的module是在九里边的,我们调成这个八。哎,然后你再OK一下,那这时候他就报错了。哎,报错了,你看这个信息,他说呢不能够使用,哎这个这就是叫钻石操作服了啊说呢,在我们这个匿名的这个内部类当中。因为现在呢,你它主要原因是这个事儿啊,这个咱们原来能写呢,其实你原来是这样写的,有同学说把原来这个知识呢,也整迷糊了啊,原来你是个release这个位置,比如你写这个string。
02:16
诶对这样的方式呢,是允许的,这个是在咱们这个叫诶JDK7啊,其实就实现了这样的一个方式了啊JDK7中的这个。哎,新特性,哎这呢,因为它存在一个叫类型推断,哎这样子了成,那现在的话呢,在这个八里边呢,现在这个区别是什么呢?是因为你后边呢,提供了一个匿名内部类了。呃,因为呢,我要根据这个构造器这个位置呢,去决定你这个参数这块咋写了,但是你这个位置呢,说你这个又是由它决定的,按说这个位置是可以不用写的了,因为呢,它决定了它,然后它呢再去决定它,这不连锁下去就行吗?但是呢,这个呃相当于编译器呢,优化的在八,当在这个八当中优化的没有那么好,你这块你要不写的时候呢,它就识别不出来了,所以呢,你要是提供这个匿名实现类的时候呢,在八里边要求必须要加上。
03:11
哎,你加上了啊这块他就不迷糊了,说我这就就去这找啊,你写上了,那我就能找着。啊,这是我们说的这个点啊,也就是说在这个位置的这个情况下,我们在JDK8当中是不可以识别的。啊,这个呃钻石呃操作服啊,它与叫匿名哎内部类啊,在JDK或者叫JAVA8中啊,然后相当于不能这个共存啊,哎在这块,然后呢,在JAVA9中哎就可以了。哎,在八里边这个报错,然后你把它再打开,我们呢,放到这个九里边。哎,然后OK一下这就可以了,哎,其实本身也应该就可以啊,呃,因为你由这决定了这儿这儿呢,再去决定下边就行了,哎,行,这就我们说的这个事儿,这是呢,我们说这个,哎扎VA9的这个特性五,其实是一个比较小的一个语法上的一个改变啊。
我来说两句