新手学java有几个不懂得问题求各位大神解答

封装有什么意义。为什么要用prative封装呢。直接public不行吗?都说为了安全难道用一个方法setter getter 改变数据这样就安全么?。直接public 多方便。求大神举个例子说明。
第二个问题static:证明此方法是由类名称调用的这句话怎么理解。
第三个问题static有什么作用,我就知道他在类里最先执行然后可以不实力化调用,然后有什么用这有点蒙。
第四个问题我理解的映射就是一项与另一项的关系。他也可以用属性表示。但是之所以用方法进行映射是因为当有好多数据的时候用映射更方便。
各位大神不求全解决只求能指教一下图片说明图片说明图片说明

没必要纠结这个,,功能都是业务需求发展来的

第一:谁说封装只能用private?那是实体类中的属性用private定义后只能通过get/set方法获取。
第二:static修饰后可以直接被类名调用。这句话的意思是:类不需要实例化就可以直接调用被static修饰属性或者方法。因为static是静态分配内容空间
第三:在某些情况下,用static修饰访问快,但是不能滥用
第四:用映射更方便,我的理解是:该用就用。很多东西用多了就会慢慢理解,你现在的思想可能还差了一点。慢慢来,急不得。

你封装起来的数据,不提供get方法外界是得不到的啊,为什么不安全呢?