00:00
行,那接着呢,我们说下一个问题啊,现在呢,我们造了这个类的一个对象,叫做P对象,那么在这个基础之上,我们再创建这个类的另外一个对象,在这个下面我呢再去声明一个叫P2,哎,我new一个person。行创建好了,创建好以后,咱们上边这个呢,P对象我声明了它的,呃,这个调用了它的属性,调用了它的方法,尤其是调属性这块呢,我们给这个属性呢做了一些赋值,像这个P1的name呢,改成叫Tom了,我们在执行的时候呢,也确实能够出来Tom没问题啊,那我现在呢,又造了个对象叫P2,在这个情况下呢,如果我们去打印一下这个P2的name,问此时呢是不是Tom?不是,那不是的话呢,应该是什么?对同学说是no是吧,那还有一种可能性呢,就是说会不会报错呢。也是一种考量,因为呢,似乎没有负个值,哎,这就涉及到一系列的问题了啊,我们一个一个说先跑一下。
01:07
哎,这个结果呢,是一个no,那我们反着来推说,为什么它是个闹啊,首先不是Tom这个,大家呢说的是对的,我们就能发现我们造了这个对象,一个叫P1,一个叫P2。跟咱们讲前天讲的那个数组是一样了,就啊就是那个瑞一瑞二一样,咱们这时候在对空间当中有几个对象啊。两个吧,我们说每扭一次,其实就造了一个结构啊,咱们拗过两次,说明呢,在堆控件当中,实际上呢,是有两个对象实体的。好,那么从这个结论呢,再往前推,那就是每一个对象实体呢,都有一份独立的属性。就像大家写简历一样,简历的那个模板就相当于是类,然后呢,诶大家张三拿到这个模板了,你把你的信息填上去,那是你的信息,我拿到以后呢,我填是我的信息,咱们咱们俩是不是每个人都有一套这个信息啊对,每个人都有一套属性,所以呢,上面这个P呢,它有一个属性叫name,人家呢名字叫to姆,咱们这呢也有个name,不叫to姆,对吧?哎,这块呢,这个从结论上来看,它就是no,意思呢,就没有赋值,这个nor呢,咱们前面讲数组的时候说过,是那个一为数组的默认初始化值,对于string来讲是不是就是no啊,对啊,这时候呢,咱们看到结论上也没有报错,说明呢,诶这个属性它有默认初始化值。
02:39
诶,它有默认初始画值,那似乎是不是就意味着如果我们去打印一下p2.is没有,你觉得是多少就是false,哎,就是跟咱们那个属性的1V数组属性的那个默认出化值呢是一致的,哎这个一会咱们展开细说啊,哎通过这呢,我们想说明的一个问题,就是刚才说的非Tom,哎这呢,你写上个true,这也是一个非处的。
03:09
来说明什么问题呢?就是这个事,哎,这来一个三啊说如果创建了一个类的多个对象。哎,多个对象,那么我们说呢,每个对象都独立的拥有一套我们这个类的属性。创建了一个类的多个对象,则每个对象都独立的啊,拥有一套。啊,这个类的属性,当然这个时候呢,我们其实从后边来看还得再严密一点啊,这时候这个属性呢,咱们都是这个叫非static的啊,大家呢,如果你要看我后边内容的话呢,呃,可能会说,诶老师你这说的不严密是吧,我这就稍微严密一点啊,就是非static的,呃,什么叫非sta,就这块我们没有加这个static个关键字啊,啊就是这样的一个情况,哎,都拥有一套这个,呃,这个类的属性,那么就意味着。
04:15
意味着呢,就是说如果我们修改啊一个啊对象的这个属性A吧,诶如果我们修改一个对象属性A,则不影响另外一个对象属性A的值。哎,这个属性A它的一个值。这就是我们所说的这个独立的拥有一套属性的一个意思,哎,这个大家呢,需要去体会一下它啊行这呢说清楚了,说清楚以后的话呢,我再这样做一个事儿,我这这样啊,我P一个P3 P3呢等于P1。
05:03
问,此时如果我要是去输出一下P3点内,这时候是多少?烫吧,诶这个呢,就跟咱们说的那个是不是数组那块就类似了,对的啊来执行。哎,确实呢是糖,或者说呢,我们这个通过P3。通过P3呢,咱们比如说把这个A我改成一个十,然后呢,我再去调一下P1的A,这是几几有说一的,有说一的,那你这个为什么是他吗。那说明理解的还没有那么透彻了啊,这是汤姆能理解了,那这是几十倍。那说明还是关于那个瑞那块没有整太明白是吧?嗯,我这个操作呢,是什么意思啊,对,他不就跟咱们当时讲这个瑞提的这个,你把A瑞一付给俄瑞二,这不是完全一样吗?这时候相当于我们把是P1对象的地址付给了P3呀,对,将P1这个对象或者这个变量吧,这个变量呢,准确说它是一个对象的啊,将P1变量的这个保存的。
06:32
对象地址值,哎,然后付给咱们的这个P3,那付给P3呢,我们导致呢。是不是P1和P3指向了堆空间当中的同一个对象呀?堆空间。中的这个啊,同一个对象。
07:01
哎,对象实体吧,这样说。他俩指向的是同一个,所以说呢,我们你调P1P3,实际上呢,相当于就是调的P1,我们修改P3,实际上修改的也是P1。哎,所以它都是一样的。哎,这是这样一个情况啊,哎,那这里边呢,大家就要区分出来,我这个P2和这个P3,它们这两个变量在赋值的时候的不同的写法,你知道呢,诶发现这个属性这块呢,有的是共用的,有的是不共用的,这个呢要清楚啊。
我来说两句