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

accessor方法

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

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

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

Mutator方法

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

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

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

为什么使用accessors 和Mutator?

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

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

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

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

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

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

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

相关推荐:《Python教程》

以上就是如何在Java中使用Accessor和Mutator?的详细内容,更多请关注自学java网其它相关文章!

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:our333@126.com我们将配合处理!

原文地址:如何在Java中使用Accessor和Mutator?发布于2021-11-26 11:43:17