ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java开发基础篇SE封装的写法

2021-06-28 10:57:34  阅读:148  来源: 互联网

标签:封装 成员 访问 SE Java 方法 类中 属性


1.1访问控制修饰符作用

访问控制修饰符的作用是控制类中的成员可以在哪些范围内被访问到

1.2访问控制修饰符

用得最多的有2个

  • public 公共的意思, 访问范围最大, 可以任意范围内访问
  • private 私有的意思, 访问范围最小, 只能在本类中被访问
2 如何封装 2.1 成员

类中的要素, 属性, 方法, 构造器, 代码块, 成员内部类, 这些要素都隶属于类, 对于本类而言, 这些要素就是互为成员, 既然是互为成员, 那么它们之间的互相访问是没有任何障碍.

2.2 成员私有化

只需要把类中的成员使用private修饰就是私有化了, 而一旦成员被私有化, 这个成员也称为被封装了

注意 : 代码块不能封装

aef13999383dab6475c6ae011560c76b.png

2.3 封装的问题

aef13999383dab6475c6ae011560c76b.png .1. get/set方法

    因为成员一旦私有化, 就不可以在其他类中直接访问了, 但是在其他类中仍然有访问的需求, 成员之间是可以互相访问的, 所以解决这个问题的方法就是在本类中添加一些公共方法, 通过方法间接访问类中的私有成员.

0fdfea92147446e492031b12a48367e6.png e2fba3cfce4b74cf959a9818d272ef49.png 2.间接访问属性 db17bab181873a817444f152ca5dbbe0.png 3. 为什么要封装

     如果不使用封装而直接访问对象的属性, 就可以给属性赋上一些不合理的数据值, 比如

t.age = 50000; // 显然这个操作是应该失败的, 因为年龄不合理

但是如果通过方法来赋值, 就可以把这种错误拦截住

相同的道理, 如果要获取某个属性, 但是需要在内部再处理一下, 也可以通过方法来实现

 

// 保护数据

       public void setAge(int a) {

              if (a > 120 || a < 0) { // 当参数中传入的数据不合理时, 方法直接返回, 不给对象的属性赋值

                     return;

              }

              age = a;

       }

原文链接:http://www.atguigu.com/jsfx/11580.html

 

标签:封装,成员,访问,SE,Java,方法,类中,属性
来源: https://blog.51cto.com/u_15206233/2950295

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有