//看关键信息的同学,误解部分可以跳过
在此之前,我想先说一下我对setter_getter的误解:
我之前以为setter是某个类里的方法,我去查jdk,jdk里根本就没有,当时想的是连看源代码的份都没了!!!
现在回想起来感觉那时我是蛮无知的,其实setter_getter方法是自定义方法
<类、方法要看是否为自定义,自定义的是找不到源头的,因为源头就是它本身>
总结:探索事务,就要明白其原理;代码原理,代码不仅要清楚调用与被调用情况,有时候也不能忽略是否为自定义(自定义的话,看其自身代码就是了,不要惯性思维的找代码出处,那是永远也找不到的);其实研究类、方法,直接看类、方法里的代码怎么写的就是了,里面有没有调用一目了然!
这篇博客是我一下子发现setter是自定义方法的博客:
https://blog.csdn.net/baidu_28787811/article/details/80509912
以下是正文:
1.setter_getter的意义目的
1.1 setter是为了private的属性而生的,方便在其他类中调用private属性(通过.get属性() 来获取)
属性可以没有setter ,但属性必须是public等,才能在其他包中调用
<setter_getter: 方便private属性的变量在其他类中调用>
2.setter_getter的调试
2.1
在同一个类中,在没有setter的情况下
类.属性 (在同一个类中不能打印,因类名后无法点属性)(在另一个类中无法类.属性,而是类.get属性() ; 可能的原因是--直接类名.属性 ,类没有实例化,则无法获取其中的对象值)
this.属性 (在当前类中能打印出来)
2.2 不再同一个类中
获取类中的属性,用了setter_getter的话,就可以类.get属性 来获取类中的属性值
以上是我个人总结,以下别人的博客交流
set和get方法与public变量的优点[重复]