00:00
我们可以再来把这个东西呢,比如说哪儿呢,比如说这这个叫cat是吧,我们这块呢,有一个bird的鸟儿啊,鸟儿也有自己特有的啊,也有自己特有的方法行吧,啊也有自己特有的方法啊,比如说我们现在在这里,嗯,写一个什么方法呢?STEM唱歌take.out点打印输出,比如说叫做鸟儿在歌唱行吧,那如果我这几个类是这样写的。我在这里呢,我再去写一个测试类,各位啊,大家看以后的代码可能是这样的零二。来,Public class test02 public static voidman。
01:01
好大家看啊,那么这块呢,咱们。呃,Animal啊,X一个什么呀,Bird出来,然后呢,Y呢,我一个什么呀,K出来。然后接下来呢,我们来调调一下啊,如果X是。鸟儿,我们就让它唱歌。啊,如果是猫,我们让它抓老鼠。那这个程序怎么写,If X instance of吧?它是一个bird是吧,如果它是一个bird。我们就让他怎么做呀,转型吧。Bird吧,是把X转成bird呀,如果X它是个bird呀。转成bird吧,只有bird是不是才可以啊,If程序能到这的话,这说明啥?
02:01
这说明什么?这说明它不是一个鸟儿对吧?那如果X instance of instance of,它是一个K对吧,那我KC。Cat,然后呢,加一个XX是一个猫的话,那我就把X转成猫,是猫的话,我可以让它,哎,Catch mouse啊抓老鼠,那同样我们这个代码也可以怎么着啊,复制一下贴过来放到这儿,那如果Y呢,对吧,它是一个鸟儿的话,我们让它怎么着啊唱歌,如果Y呢,它是一个猫的话,我们让它抓老鼠,好,这个代码大家能看懂吗?应该没问题吧。能不能看懂?就如X是个鸟儿,转成鸟儿唱歌。那I if,如果,如果X,它是一个什么呀?猫的话,我们转成猫,让它抓老鼠。
03:05
Y这块我们也可以判断一下对吧,如果Y呢,它是一个什么呀,鸟儿的话转成鸟儿去唱歌。如果Y呢,它是一个什么呀?K对吧,哎,好这边。错了,这都得换啊。Y呢转成什么呀?Bird对吧,这是Y呢转成cat。是不是这改一下啊,从上面开始复制的啊,需要改一改这块改了是不是那这块也得改啊,好了,那么接下来我们再编译一下这个程序,Java c编译T02.java。Java运行。鸟儿在歌唱,猫正在抓老鼠是不是?哎,这1234算是四个分支吧,其中执行两个两个啊,执行两个分支,执行两个分支啊,因为其中这是一个条件,两个条件,三个条件,四个条件,这四个条件当中只有俩条件是成立的。上面这个成立是因为X它确实是一个对吧,大家在这里应该有疑问啊。
04:04
就是以后代码为什么这样写。对吧,有的人说老师我是一个程序员,同时我也是个人。我是人,我有眼睛,我可以看呀。我可以看到X后边是呀。那我就直接X转成B不就行了吗?我还来这么一个判断,这干啥?你们有没有这样疑问?有没有这样的疑问,各位?有吗?互动一下呗。你有没有这样的疑问,还是说我给你提出来,你才有这个疑问?就我是个程序员,我是一个人,我有眼睛我可以看呀,等号右边是个啥,我难道不知道吗。我知道是个word完之后就转成word不就行了,判断啥呀,以后的开发类名没那么明显。
05:01
没有感觉,五中这确实没感觉啊,但是电脑不知道啊。有可能是别人写的,哎,伟斌说的太棒了,伟斌啊,咱说了这么一大堆啊,只有伟斌同学在这说的是正确的。说是正确的。就有可能是别人写的是什么意思?大家可万万没想到。电脑没有眼睛,省略else if可以吗?咱根本文杰这这根本就跟咱没在一个频道上啊。这是干啥?I if可以省略吗?咱先不管省略不省略的事儿啊,就说就是大家好好想想,如果是代码,我知道你等号右边是一个bird,我也知道你等号右边是个cat,我是不是就没必要这样做了?之所以说以后我们代码会这样写,原因是因为我们不知道,我们不知道它是个还是个cat。你,你明白吗?
06:01
你明白吗?就是说这个代码可能会有疑问啊,就是。我一会儿给大家写一个你就知道了啊,这个代码的疑问是什么呢?是肉眼可以观察到。对吧,底层到底是new。还是new KT?对吧,肉眼可以观察到。底层。到底是new还是new cat?我们为什么?还要进行instance of的判断呢。原因是。你以后可能。肉眼看不到。
07:04
感觉很有意思啊,就是你以后可能肉眼看不到,比如说老师,难道我瞎了?给大家举个例子啊,举个例子。
我来说两句