00:01
那么接下来呢,我们再来分析几个几个问题啊,我来分析,大家来听好吧,啊,大家来听啊,看我这个的这个怎么样啊,啊刚才说到什么呢?说到这个在这个这是一个什么呀?搭框对吧?这个大框叫什么呀?叫类题是不是,哎类题啊,那么这个类题里边才能写方法,注意啊,你不能说你以后啊这个写个方法,你在方法里面又写一个方法,你就在这写个方法,Sta avoid对吧,那不行,你这个定义的位置有规矩啊,你是在类题里边才能定义方法。定义方法啊,这是第一点各位,第二点我再三强调一下啊,方法里边大括号里面程序是遵循自上而下的顺序依次出行执行的,一定要记住啊,一定要记住啊,第三点就是方法这个东西不调它是不会执行的,但是闷方你不用管啊,闷方法是加va信机调的,调过来之后呢,先执行some in的啊,Some in的方法执行。卡到第32行,为什么,为什么34不执行,因为32没结束,为什么32没结束,因为去调别的方法去了啊,别的方法在这个大框里边干什么呀,一行一行在执行对吧?哎,等他执行结束之后,这个第32行怎么着啊才算结束,然后开启第34行代码。
01:10
好,我在这里就有一个问题,各位听我说啊。为什么说X和Y是局部变量?为什么说他们是局部变量,为什么说X和Y这两个变量,还有Z这个变量,在这个方法执行过程当中,有效方法执行结束之后,这个X和Y还有Z这三个变量的内存空间就释放了,为什么我这么说,各位。知道吗?它为什么会释放掉?会为什么会把XY,还有Z的三个局部变量,它为什么把这个空间给释放掉?有没有同学可以回答一下的?假如说不释放会有什么问题?假如说不释放这三个变量,它会有什么问题?你想一想啊,同一块内存空间,你调一下这个方法,它开了一个空间叫X,还有Y,还有什么Z3个局部变量的内存空间给它开出来了,是不是?那么假如说这个方法直行结束,XY,还有Z这三个变量内存空间如果不释放的话,那么我问你再去调用下边这个sum int的说,那么sum int666会传给X对吗?那么也就是说他会再声明一个空间叫什么叫X,对吗?再声明空间叫Y,在这里再声明一个新的空间叫什么叫Z?那么大家是否还记得曾经我说过一句话,说在同一个内存空间当中,变量名是不能重名的,还记得吗?
02:30
收到的话打个一,各位收到的话打个一,收到的话这个比较重要啊,收到的话打个一。各位。就理解我刚才所说的话吗?理解我刚才所说的话,就是说为什么说这个方法执行结束之后,它这个XY,还有Z这三个变量,这三个变量它的内存空间就释放掉了,原因是什么?原因是刚才同学说的很好啊,方法结束了,那这个三个变量的内存空间就没必要再占有了,对不对?给它释放掉,这很正常啊,但是我从这个本质上给大家说一下,它为什么得必须得释放,原因是你定义了XYZ和三个变量,那么接下来你再去调我们的34行代码呢?假如说你XYZ没有释放掉三个变量都叫XYZ,那么这个方法在执行的时候,XYZ呢,又声明了一次,那大家想这个变量名是不是就冲突了是不是?所以大家想是不是我们在32号代码执行的时候,调30号代码执行这个方法,方法执行过程当中我们XYZ是有效的,方法执行结束,XYZ3个变量的内存空间就释放掉了,那么这个时候呢,在内存里面是没有XYZ的,调用我们三的方法的时候,哎,再调34行代码的时候,这个XYZ呢,这个变量会重新给它开出来,这叫局部变量,那这叫局部变量在这里呢,我要给大家说一下啊,XYZ呢,在以下的在以下的sum in的方法中都属于局部变量。
03:56
啊,局部变量有一个特点是方法体值,方法结束,方法结束之后,局部变量占用的内存释放,啊,内存会自动释放啊,会自动释放,局部变量占用的内存会自动释放。
04:17
啊,自动释放。好,这个事儿呢,大家要知道啊,这个事大家知道要理解一下,要理解一下啊。好,这就是我刚才给大家说的这个局部变量的事儿啊,就是在这个方法里边。有效,为什么说我在这再定一个一个啊void啊,比如说这个方法,那么这个时候呢,我我在这个里边,为什么在这system.out点打输出,我为什么访问不了这个Z啊,这个Z我为什么在这用不了啊,在这个方法里面为什么用不了这个Z呀。对吧,哎,因为之前我说了这个方法执行结束,那个Z的空间就释放了,那你在这个方法里面肯定用不了啊。是不是你肯定用不了,另外出了大括号了,你看出了大括号就不认识了,是不是在这你怎么能访问呢?这个是找不到符号是不是,所以这个时候呢,我们再去Java c呢,去编译一下method test02的Java,你看编译报错说找不到符号是不是?哎,48行找不到符号,就是这个第48行就在这儿,是不是错误找不到符号啊,无法访问的。
05:15
A是局部变量,那有多老师和YX和Y能不能访问啊,X能不能访问,那不行啊,你这里就没有X啊,Y能不能访问啊,哎,也访问不了,都是找不到符号啊,都是找不到符号,XY都找不到啊,所以这块呢,咱们给它注释掉啊,这个注释掉。好了,那这个呢,我们就说到这儿啊,再编译就没问题了,大家看再编译就没问题了啊。
我来说两句