accessor和mutator的区别_java concat方法

accessor和mutator的区别_java concat方法实现数据封装的一种方法是使用accessors和Mutators。accessors和Mutators的作用是返回和设置对象状态的值。让我们学习如何用Java编写accessors和Mutators。例如,我们将使用一个Person类,它的状态和构造函数已经定义:accessor方法accessors方法用于返回私有字段的值。它遵循一种命名方案,将“get”前缀放在方法名称的开头。例如,让…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

实现数据封装的一种方法是使用accessors 和Mutators。accessors 和Mutators的作用是返回和设置对象状态的值。让我们学习如何用Java编写accessors 和Mutators。例如,我们将使用一个Person类,它的状态和构造函数已经定义:

a4622ae6a5f4f2deacb474416e178c6b.png

accessor方法

accessors 方法用于返回私有字段的值。它遵循一种命名方案,将“get”前缀放在方法名称的开头。例如,让我们为firstname、middleNames和lastname添加Mutator方法:

这些方法总是返回与其对应的私有字段相同的数据类型(例如String),然后只返回该私有字段的值。

我们现在可以通过Person对象的方法访问它们的值:

Mutator方法

使用mutator方法设置私有字段的值。它遵循一种命名方案,将单词“set”前缀放在方法名称的开头。例如,让我们为地址和用户名添加mutator字段:

这些方法没有返回类型,并且接受与其对应的私有字段相同的数据类型的参数。然后使用该参数设置该私有字段的值。

现在可以修改Person对象中的地址和用户名的值:

为什么使用accessors 和Mutator?

我们可以将类定义的私有字段更改为public,并获得相同的结果。重要的是要记住,我们希望尽可能地隐藏对象的数据。这些方法提供的额外缓冲区允许我们:

改变数据在幕后的处理方式。

对字段设置为的值进行验证。

假设我们决定修改存储中间名称的方式。我们现在可以使用字符串数组而不是一个字符串:

对象内部的实现已经更改,但是外部世界没有受到影响。方法的调用方式完全相同:

或者,假设使用Person对象的应用程序只能接受最多10个字符的用户名。我们可以在setUsername变量中添加验证,以确保用户名符合以下要求:

现在,如果传递给setUsername mutator的用户名超过10个字符,它将自动被截断。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194280.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 手把手教你完成图像分类实战——基于卷积神经网络的图像识别

    手把手教你完成图像分类实战——基于卷积神经网络的图像识别在很多的项目中,都会用到图像识别技术。我在智能电子秤的项目中,就使用了简单的图像识别算法来完成对果蔬的分类(三分类)。图像识别中,最常用的框架就是TensorFlow,我们今天就使用这个框架,手把手教学完成图像识别分类。完成一个图像识别模块主要包括四步:采集数据集搭建合适的模型调参、训练并测试完成接口到项目中关于环境的配置我在此处不多赘余描述,可以自行百度搜索,进行环境配置:python3.6+tensorflow+opencv。关于编译器,我在此处推荐spyder。使用起来非常方便,非常

    2022年6月12日
    61
  • vmware中安装centos_虚拟机系统安装教程

    vmware中安装centos_虚拟机系统安装教程一、前言最近有网友反应初学Linx不会安装,找了许多教程不是太全面,总会遇到一些要不是启动不了,要不是连不上网,各种问题,为了让大家能够顺利的安装,小乐写了一个非常详细的教程,让大家少入坑。二、背

    2022年8月5日
    7
  • 观察者模式是非常常用的设计模式_实现一个观察者模式

    观察者模式是非常常用的设计模式_实现一个观察者模式好久没有写博客啦,之前看完了《设计模式之禅》也没有总结一下,现在回忆一下设计模式之观察者模式。1.什么是观察者模式简单情形:有A、B、C、D等四个独立的对象,其中B、C、D这三个对象想在A对象发生改

    2022年8月6日
    14
  • pycharm django环境搭建_java项目框架搭建流程

    pycharm django环境搭建_java项目框架搭建流程前提是,已经知道了运行Django最好使用派恰姆的专业版,由于本人不想再重新下载新的软件,于是找到了只用社区版就可以运行框架的办法,在这里记录一下。首先用虚拟的virtualenv新建项目安装djangopipinstalldjango输入命令行django-adminstartproject[foldername]如上图所示,django框架已新建好5.启动pythonmanage.pyrunserver成功!…

    2022年10月9日
    6
  • CentOS 6.5 & CentOS 7 rpm安装ftp服务端与ftp客户端「建议收藏」

    CentOS 6.5 & CentOS 7 rpm安装ftp服务端与ftp客户端「建议收藏」一、rpm安装ftp服务端1、查看是否安装vsftprpm-qa|grepvsftpd如果出现vsftpd,说明已经安装vsftp2、下载vsftpd:我这里下载的是vsftpd-2.2.2-24.el6.x86_64.rpm3、安装vsftpdrpm-ivhvsftpd-2.2.2-24.el6.x86_64.rpm4、测试是否安装成功servicevsftp…

    2022年10月21日
    2
  • [硬件驱动] CAN接口

    [硬件驱动] CAN接口CAN接口的介绍:CAN总线可分为:高速CAN,低速CAN,单线CAN。1.在速度方面高速CAN的传输速率在125K~~1Mbps。低速CAN的速率在125Kbps以下,低速CAN具更好的容错性。2.这三种总线之间的最主要区别是物理层。以传输介质和线的数量说,单线CAN只需1条导线,低速容错CAN和高速CAN通过双绞线传输。还有电平的逻辑的区别,定义逻辑为1称作隐性,逻辑为0称作…

    2022年6月18日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号