JavaBean类
Bean类/封装意味着变量应该是私有的,getter和setter应该是公共的。由于数据隐藏的原因,任何人都无法从外部访问此变量 我的问题是:`使用getter/setter方法,我们可以从类外访问/设置变量。那么为什么我们需要将该变量保持私有-&我们如何判断这是数据隐藏 事实上,我想得到一些解释,因为我不知道我正在做这样的项目。 如果有任何错误或不清楚的问题,请原谅我 请任何人解释一下JavaBean类,java,Java,Bean类/封装意味着变量应该是私有的,getter和setter应该是公共的。由于数据隐藏的原因,任何人都无法从外部访问此变量 我的问题是:`使用getter/setter方法,我们可以从类外访问/设置变量。那么为什么我们需要将该变量保持私有-&我们如何判断这是数据隐藏 事实上,我想得到一些解释,因为我不知道我正在做这样的项目。 如果有任何错误或不清楚的问题,请原谅我 请任何人解释一下 提前感谢我刚才想到的几个原因: 您可以控制变量的访问方式,例如,不允许在setter中设置无效值,如null
提前感谢我刚才想到的几个原因:
setter
中设置无效值,如null
,甚至不允许只读变量使用settersetter
和getter
定义,而不做任何更改,因此您可以更轻松地进行内部更改/重构,而不会影响类的所有用户我刚才想到的几个原因:
setter
中设置无效值,如null
,甚至不允许只读变量使用settersetter
和getter
定义,而不做任何更改,因此您可以更轻松地进行内部更改/重构,而不会影响类的所有用户getter/setter定义类的可读/写(或两者兼有)属性。 private字段声明此属性的一种可能的内部表示形式 通过使用属性定义(getter和setter),可以定义对此字段的访问权限,也可以在setter上添加约束。对于集合,您可以确保只提供不可修改的版本 此外,在重构期间,您还可以委托将值检索委托给另一个类或对象,而无需更改协作对象。您可以更改内部数据类型,例如,也可以构建数据类 因此,封装内部状态并提供访问
记住,并不是每个领域都需要接受者和接受者;-) getter/setter定义类的可读/写(或两者)属性。 private字段声明此属性的一种可能的内部表示形式 通过使用属性定义(getter和setter),可以定义对此字段的访问权限,也可以在setter上添加约束。对于集合,您可以确保只提供不可修改的版本 此外,在重构期间,您还可以委托将值检索委托给另一个类或对象,而无需更改协作对象。您可以更改内部数据类型,例如,也可以构建数据类 因此,封装内部状态并提供访问 记住,并不是每个领域都需要接受者和接受者;-) 1)这样做实际上是在公开变量值,但它封装了变量值的计算方式。有了它,您可以根据需要在任何时间点更改变量值的计算方式 2) 这种表示方式有助于“设计模式”。它说的是,每次客户机请求一个属性值时,您都可以将所有变量建模为单个对象并发送给客户机,而不是发送每个属性值。1)这样做,实际上是公开变量值,但它封装了变量值的计算方式。有了它,您可以根据需要在任何时间点更改变量值的计算方式
2) 这种表示方式有助于“设计模式”。它说的是,每次客户要求一个属性值时,您都可以将所有变量建模为一个对象并发送给客户,而不是发送每个属性值。愚蠢的示例:您的变量可以是
int
,但您可以通过解析它来获取并设置字符串
值。。。以透明/不封闭的方式,我们可以使用setter/getter
作为过滤器概念来复制。例如,如果您想授权任何调用setter
的人,您可以在setter方法中执行此任务。愚蠢的示例:您的变量可以是int
,但您可以获取并设置一个字符串
值来解析它。。。以透明/不封闭的方式,我们可以使用setter/getter
作为过滤器概念来复制。例如,如果您想授权任何调用setter
的人,您可以在setter方法中执行此任务。