🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 我们程序设计追求“高内聚,低耦合”。 ## ➢高内聚:类的内部数据操作细节自己完成,不允许外部干涉; ## ➢低耦合:仅对外暴露少量的方法用于使用。 ## 隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提 ## 高系统的可扩展性、可维护性。通俗的说,把该隐藏的隐藏起来,该暴露 ## 的暴露出来。这就是封装性的设计思想。 ## 【3】封装的好处: ## 提高代码的安全性 ~~~ package com.msb.test01; public class Girl { //女孩 //属性: private int age; //私有数据 //读取年龄 public int duquAge(){ return age; } //设置年龄 public void shezhiAge(int age){ this.age=age; } } ~~~ ~~~ package com.msb.test01; public class Test { public static void main(String[] args) { Girl g=new Girl(); g.shezhiAge(18); System.out.println(g.duquAge()); } } ~~~ ## 上面的代码,对于属性age来说,我加了修饰符private,这样外界对它的访问就受到了限制,现在我还想加上其他的限制条件,但是在属性本身上没有办法再加了,所以我们通过定义方法来进行限制条件的添加。 # 以属性为案例: ## 进行封装: ## (1)将属性私有化,被private修饰--》加入权限修饰符 ## 一旦加入了权限修饰符,其他人就不可以随意的获取这个属性 ## (2)提供public修饰的方法让别人来访问/使用 ## (3)即使外界可以通过方法来访问属性了,但是也不能随意访问,因为咱们在方法中可以加入 限制条件。 ## 【5】实际开发中,方法一般会写成 setter,getter方法: ## 可以利用IDEA快捷键生成:alt+insert -->getter and setter: ![](https://img.kancloud.cn/35/39/3539143026c5cc82d9af0bd9c379aec7_378x522.png)