封装就是使用公共方法对私有成员变量进行操作(赋值或获取),这样做可以防止该类的代码和数据被其他类
定义的代码随意访问,有助于数据的安全。

–我们可以通过修改成员变量的属性(一般为private),用setter方法为成员变量赋值用getter方法获取
成员变量的值
,来对代码和数据进行封装和访问。

让我们来看个例子了解一下:

public class Encap{private String name;              //访问权限设为private则只能由本类可以调用private int age;                   //若想访问,则只能通过setter和getter方法//用setter方法对私有成员变量进行访问和赋值public void setName(String name){this.name = name;              //此处采用this关键字是为了解决成员变量和局部变量重名的问题//若局部变量与成员变量不重名,则可以不采用this关键字}public void setAge(int age){if(age<0 || age>=141){          //对变量age进行限定,使其更加符合实际System.out.println("年龄无效");}else{this.age = age;}}//用getter方法获取私有成员变量的值public String getName(){return name;}public int getAge(){return age;}}

那么Encap类是如何被访问的呢?让我们来看看下面的代码:

public class Test{public static void main(String[] args){Encap encap = new Encap();         //创建对象encap.setName("Lucy");System.out.println(encap.getName());//打印的结果就是:Lucyencap.setAge(80);System.out.println(encap.getAge());//打印的结果就是:80//若赋的值不在0到141之间,则会打印:年龄无效 0//打印出“0”,是因为age初始值默认为0}}

Java封装(速读版)相关推荐

  1. 每日案例(第四期):智慧金融08-10 | 知识图谱实践案例集(速读版)

    为了总结梳理知识图谱在各领域落地应用中的好经验.好做法,中国电子技术标准化研究院依托知识图谱标准化工作组.知识图谱产业推进方阵(筹)联合联想.华为等32家单位编写了<认知智能时代:知识图谱实践案 ...

  2. Java代码块总结(速读版)

    **代码块必须直接定义在类中**,有两种:静态代码块 和 非静态代码块 静态代码块是在类(class文件)加载内存时执行,而非静态代码块是在创建对象(new 类名();)时执行. public cla ...

  3. Netflix 总用户达到 2.325 亿;马斯克打脸创建 X.AI 公司;印度首开苹果门店;谷歌老板对 AI 很担心?特斯拉营收增加,但净利润下降…《经济学人 | 第 17 期 | 速读版》

    快速阅读版,完整英文解析版见: https://blog.csdn.net/YopenLang/article/details/130375444 中国第一季度经济增长出乎意料 中国第一季度经济同比增 ...

  4. JAVA开发 微信个人号 小机器人的实现 java封装微信网页版

    依赖于开源项目,GIT地址:https://github.com/biezhi/wechat-api 代码中有一些bug,需要自己改一改,然后就可以构建小机器人了 开发中遇到的棘手的问题,在拉取消息的 ...

  5. 每日案例(第二期):智慧能源领域知识图谱实践案例速读

    为了总结梳理知识图谱在各领域落地应用中的好经验.好做法,中国电子技术标准化研究院依托知识图谱标准化工作组.知识图谱产业推进方阵(筹)联合联想.华为等32家单位编写了<认知智能时代:知识图谱实践案 ...

  6. 每日案例(第三期):智慧能源领域知识图谱实践案例速读03-04

    为了总结梳理知识图谱在各领域落地应用中的好经验.好做法,中国电子技术标准化研究院依托知识图谱标准化工作组.知识图谱产业推进方阵(筹)联合联想.华为等32家单位编写了<认知智能时代:知识图谱实践案 ...

  7. JAVA+TEXT+小说速读训练器

    很久以前,大概是12或13年,下载了眼神速读软件. 那时看一本小说只要一个上午,一分钟读上万字.文字从眼前刷刷而过,就看个大概,走马观花. 刚开始时,眼睛容易疲劳,看着看着,眼泪就流了出来.但是最终坚 ...

  8. Java实战(第二版)读后总结与感想

    1. 基本信息 Java 实战(第二版)Modern Java in Action, 2nd Edition [英] 拉乌尔–加布里埃尔·乌尔玛(Raoul-Gabriel Urma),[意] 马里奥 ...

  9. 如何快速阅读java源码_如何速读?--如何快速阅读

    下面这些资料是我刚才在整理电脑硬盘的时候发现的,是以前自己刚刚开始关注自己阅读速度和质量的时候收集的资料.因为但是上面不方便,所以全是整理成了TXT文件保存下来,现在发到Blog里面,做个记录.速读要 ...

最新文章

  1. 使用Python,OpenCV,K-Means聚类查找图像中最主要的颜色
  2. Windows 8 快捷键大全
  3. Matlab处理JSON数据
  4. 17.深浅拷贝和写时拷贝
  5. MySQL启动mycat分库分表报错Java HotSpotTM 64-Bit Server VM warning: ignoring option MaxPermSize=64M
  6. 如何快速过滤出一次请求的所有日志?
  7. 双网卡上网冲突解决_双网卡冲突解决方法——route命令
  8. 用JSON-server模拟REST API(一) 安装运行
  9. java io 视频 下载_Java下载映客主播视频回放到电脑硬盘
  10. 11.3. hostname
  11. mysql阻塞 事务_MySQL Innodb如何找出阻塞事务源头SQL
  12. java中不使用局部变量a的值_【转发】Java匿名类中使用的局部变量为何要加final...
  13. 互联网硅谷投资教父 保罗·格雷厄姆 Paul Graham
  14. Talib技术因子详解(十)
  15. photoshop实现图片更换背景
  16. 2010年郑州注册物业管理师培训
  17. Win10提示未插入扬声器或耳机
  18. Eastmount博客导读:专栏系统分类和博客归纳总结
  19. ROS系列教程三:roslaunch文件及参数服务器
  20. 美国亿万富翁悬赏百万解数学难题

热门文章

  1. Linux常用命令--网终设置
  2. POJ 3258:River Hopscotch (最大化最小值)
  3. untitled与前端——初学
  4. 《对软件工程课程的期望》
  5. Buffer的工作方式
  6. SpringBoot源码分析之@Scheduled
  7. 【CSDN2012年度博客之星】需要您的一票,感谢大家的支持
  8. web架构设计经验分享
  9. Hessian通信案例(java)
  10. 汇编语言调用Linux系统调用