码迷,mamicode.com
首页 > 编程语言 > 详细

java-封装

时间:2019-01-05 18:19:25      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:保护   问题   java   set   控制   操作   ext   添加   变量   

java——三大特性之封装

一、封装的含义与作用

含义

隐藏属性、方法或实现细节的过程称为封装

作用

  • 隐藏类中方法的实现细节,更加安全
  • 便于修改,增强代码的可维护性
  • 可进行数据检查
  • 让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;

 

二、访问修饰符

可以对 类、属性、变量和方法进行访问修饰,即为封装。

如下图,对应位置的类 的 访问权限

技术分享图片

按照权限从大到小排列为

public > protected > default > private

封装的常用设置

  • 在开发中,public和private是最常用的,而剩下两个几乎不会用到
  • 构造器和类的权限通常为public
  • private权限最小,限制类外访问,一般把属性设为private,让其他类不能直接访问属性,达到保护属性的目的;
  • 当我们用 private 限制属性时,通常会有对应的 get 和 set 方法来操作属性

三、get() 和 set()

当我们用 private 限制属性时,为了避免不合法的数据输入时,通常会有对应的 get 和 set 方法来操作属性

反例:

技术分享图片

技术分享图片

如上图,由于 age 的访问修饰符时 public,我们很容易在其他类就能对 age 进行修改。并且输入了一个不符合常理的数值,这就是未封装带来的一个问题。

技术分享图片

技术分享图片

控制台结果

技术分享图片

可以看到,给属性添加 private,然后添加 get 获取方法和 set 设置方法,而在set方法中加入控制语句,对不合法数据进行检查,这就是封装。

java-封装

标签:保护   问题   java   set   控制   操作   ext   添加   变量   

原文地址:https://www.cnblogs.com/whc0305/p/10225353.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!