栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JavaSE面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaSE面向对象

文章目录
  • 封装的实现
  • Getter/Setter方法
  • 注意事项

封装(encapsulate)是指将数据及相关操作绑定在一起的一种编程机制,使其构成一个不可分割的独立实体。

在Java中,类就是这样一种结构。数据被保护在类的内部,是为了尽可能地隐藏内部细节,只保留一些对外的“接口”使之与外部发生联系。

封装的意义

封装是为了将代码的使用者和实现者分开

  • 使用者能够完全得到自己想要的功能,又不需要思考过多细节。
  • 实现者可以隐藏功能实现的细节,方便灵活进行修改而不影响使用者使用。

 

封装的实现

以上封装的好处,实际上就是访问权限修饰符的实现,Java实现封装一个是靠class封装数据和操作,另外就需要使用访问权限修饰符。

在实际的语法角度,Java当中的封装是依赖于访问权限修饰符来实现。

  • 如果是完全不需要被外界知道的属性,在类中完全可以私有化,直接用private修饰它。这样用“对象名.”就不可以在外界直接访问它了。
  • 如果一个属性有在外界访问的需求,但是希望能够实现对外界访问的控制,那就需要先私有化它,然后再使用Getter/Setter方法。

 

Getter/Setter方法
  • Getter方法:提供外界访问的途径,一般命名为getXxx(Xxx为成员变量名),一般直接返回成员变量的值即可。

    语法:

    public 该成员变量的数据类型 getXxx(){
    	return 成员变量名;
    }
    
  • Setter方法:提供外界赋值的途径,一般命名为setXxx(Xxx为成员变量名),一般使用this关键字完成赋值就可以了。

    语法:

    public void setXxx(数据类型 成员变量名){
    	this.成员变量名 = 成员变量名;
    }
    

使用Getter/Setter方法的好处

  1. 使用方法后,分离了成员变量的访问和赋值。
  2. 使用方法后,就可以控制成员变量的访问,可以控制赋值,也可以控制取值。

 

注意事项

使用private私有化成员变量,并提供方法给外界访问时,需要注意:

  1. 成员变量的访问权限应该尽量收紧,尽量私有化,当然有必要时也可以给外界权限直接访问。
  2. 在实际开发中,绝大多数情况下,都会将成员变量直接私有化,因为成员变量没必要直接给外界访问,这是一个设计的原则,然后如果外界确有访问需求,再提供Getter/Setter方法。如果确信外部确实有需求频繁访问一个成员变量,那再选择不要私有化它。
  3. Getter/Setter方法的写法非常固定,建议直接使用快捷键“alt+Insert”自动生成。
  4. 对于boolean类型的成员变量来说,Getter方法的名字较为特殊,采用isXxx的形式,这是如果该boolean类型的成员变量名本身就叫isXxx时,会导致该成员变量的Getter方法名和成员变量名一致,就会导致误解发生。所以在很多Java开发规范中,都明确建议boolean类型的成员变量不要命名为isXxx。
  5. 实际开发中,Getter/Setter方法不是给程序员调用的,而是给框架自动调用的。
  6. 静态成员变量,如果也需要Getter/Setter方法,需要注意其Getter/Setter方法也要是静态的。(少见)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/838733.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号