00:00
下边啊,咱们来看一看字段断点啊,什么叫字段断点呢?诶顾名思义,咱们在声明一个类的时候呢,诶是不是里边可以声明相关的一些属性啊,那么针对这个属性的这个断点,我们就称为呢叫字段断点了。啊,那么当我们对这个属性进行呃赋值的时候啊,或者叫修改它的值的时候呢,我们这个断点呢,就起作用了啊OK啊就是这样的一个情况,说白了就是我们可以呢,通过这样的一个字段断点呢,去监控对这个变量的一个修改情况啊好,那回到咱们这个代码层面啊,咱们打开这个叫DEBUG03了。哎,这儿呢,我提前呢,写好了一个类啊,叫做person类。这个类当中啊,我声明了这样的几个属性啊,其中呢,有一个属性呢,叫做ID,诶我这呢显示的值为一啊,然后呢,在这个代码块当中啊,在这个构造器当中啊,在我们的赛方法当中,对我们这个ID属性进行了一个修。啊,那剩下的像这个get的方法呀,像这个to three呢,诶只是在调用我们这个ID的这个属性的值是吧。好,那么这块呢,我们针对这个ID的属性呢,我们就加上了一个断点,这儿呢,跟个眼睛一样啊,这个就叫做字段断点了,那么默认情况下呢,我们点一下鼠标右键。
01:10
针对我们这个ID的属性,在修改它的时候啊,我们这个断点呢,就会起作用。啊就会起作用,好,那上面呢,是咱们这个main方法,比如说我这块呢,去调用一下这个构造器啊,诶咱们去new一个person的对象,这个位置呢,我写成是一个。三。啊,形成这个三注意呢,这是我们调的构造器呢,是下边的这个啊对我们ID的这个值呢,也进行了一个修改。啊,也进行了一个修改,行,那下边我们再去打印一下这个P的这个值没问题是吧?好那么这时候呢,我们就呃右键呢,去做一个d bug了啊诶这时候大家你注意一下,咱们这个赋值为一啊,这呢算是一个修改吗?哎,其实呢,也算是吧,因为呢,咱们这个ID变量呢,它的默认值呢是零啊,它是一个in的嘛,诶默认值零,然后呢,你把它显示的复制为一了啊,这就是一个修改,包括呢,我们下边这个代码块啊,构造器啊都算是修改了,好这块我们去做一个debug。
02:05
但你会发现呢,我们这个debug呢,并没有起作用是吧?诶什么原因呢?诶你会发现呢,我这个位置呢,是不是把这个断点呢,都给它关闭掉了,所以呢就不起作用了,把它呢打开就行是吧?好然后这时候呢,我们再接着呢去做一个底bug。好了,大家你会发现呢,当前我们这个person呢,你看就停留到这个位置了。啊,就是这个代码就停到这个位置,因为我们对这个ID呢,是不是显示的,诶做了一个赋值啊叫一啊接着你看我们再去点这个操作啊,啊这着呢,在这个代码块当中也停留了,哎,复制为二。啊,赋值为二啊,啊,然后再接着我们再去执行,在我们的构造器当中,对它呢,也进行了一个赋值,赋值为这个三。啊,你看当前呢,我们这个值是三是吧,当前我们这个z.ID呢,这个值还是二呢?啊,你再往下走一步,那这时候它就变成三了。诶好,然后呢,当年我们这个对象啊,这次的话呢,你看它还正在进行初始化啊,因为呢,我们将构造器的调用啊,这都算是初始化的这个过程当中的这个代码啊。
03:05
呃,那么构造器调用完以后呢,就没有其他位置对它进行修改了,所以我们再一执行是不是程序就结束了。哎,那这个位置呢,就相当于我们就看到了这个最终的一个效果。啊,就是这样一个场景啊好,那如果说大家注意哈,我把这个位置呢,针对于当前这个ID属性的一个访问呢,咱们也给它加上这样一个断点。啊,那么这时候大家你会发现呢,有什么特别之处呢。一方面啊,我们针对他的一个修改,你看这个断点呢,都有是吧。啊,然后再接着你注意我们再去调这个P的时候,相当于呢,是不是调它的to string方法了。而在这个to方法当中,哎,我们调用了这个ID的值,现在这个时候呢,是不是断电也得停留一下,诶你看我们比说我们再去啊执行。哎,这时候你看就停留到我们这个图存一个方法里了。啊,这就相当于你在诶获取这个变量值的时候呢,诶也让这个断点呢起作用啊,就是这么个意思啊好,那么通过这个呃字段的这个断点呢,大家可以监控针对于我们相应的属性啊的值的一个修改的行为啊都有哪些。
04:09
那如果我们在运行程序当中发现这个变量,诶不对呀,这个不是我们想要的这个值,哎,那你就可以呢,给我们这个字段呢,加上一个断点啊,看一看哪些位置啊都修改了它。哎,这呢,就是字段断电。
我来说两句