封装有什么意义。为什么要用prative封装呢。直接public不行吗?都说为了安全难道用一个方法setter getter 改变数据这样就安全么?。直接public 多方便。求大神举个例子说明。
第二个问题static:证明此方法是由类名称调用的这句话怎么理解。
第三个问题static有什么作用,我就知道他在类里最先执行然后可以不实力化调用,然后有什么用这有点蒙。
第四个问题我理解的映射就是一项与另一项的关系。他也可以用属性表示。但是之所以用方法进行映射是因为当有好多数据的时候用映射更方便。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
封装的概念:封装即公布代码的对外接口,隐藏其具体实现。
代码的访问控制越严格,即具体实现隐藏的越多,日后对代码修改的自由度越大。
举个例子,只要电脑的鼠标、键盘、显示器等对外接口不改变,不管电脑内部的CPU、内存、主板等技术如何升级改造,都不会对用户使用电脑造成影响。
将类的成员变量(即属性)隐藏起来,用getter和setter作为对外接口,可以保证安全的存取成员变量(可以在getter和setter方法中做安全校验),再者可以给成员变量日后的修改提供很大的自由度。
比如成员变量要改变类型,从int改成String。getter和setter方法的参数和返回值类型可以不变,只用在getter和setter方法内做类型转换即可。
static的成员变量是可以在所有类中共享的,变量的值是唯一的,不会随着新建的对象复制。这一特点在单例模式的实现中特别有用,可以搜索设计模式---单例模式学习一下。