一、private的描述
private是一个权限修饰符,一般用于修饰属性(隐藏属性)对应public
主用于修饰类中的成员变量和方法,被修饰的成员仅在本类中有效,类中的对象之间不受影响(可以互相访问彼此的私有成员)
私有化仅是为了保护数据不被随意更改,可以配合if条件提供更多的规则约束,提高安全性
但也不是完全杜绝外部访问,可以通过构建get(),set()方法后调用、修改
二、private修饰与否的区别
通过下图可以发现,私有方法和一般方法的调用、修改的方式是不一样的
一般方法是通过对象修改属性,私有方法是通过方法修改属性
虽然结果都能实现,但无疑有点脱裤子放屁,多此一举的味道
注意:被私有的属性不能通过 ==类名.属性名(pt.age)==调用
🤔思考:通过一般方法能随意修改,如果把年龄修改成负数,依然能识别,但数据失真了咋么办?
就这个问题,我们将age私有化后通过if条件提升数据安全性(如下图)
通过if条件,当用户赋值不符合条件时会拒绝修改