![]() |
1
12
这在JavaBean框架模型中是特别必要的,但通常不是强制性的。 当setter要“swith”一个值时,可以使用不带参数的setter。
例如,可以将“check”布尔属性设置为true。 因此,即使它不是JavaBean意义上的“setter”,您也可以想象setter用于其他目的。 不止一个论点 ,例如索引属性(索引属性支持一系列值。每当读取或写入属性时,您只需指定一个索引来标识所需的值。)
在你的情况下,一个有效的方法是
runtime exception
或者你可以考虑你的财产 约束性质 并添加一个非运行时异常。 需要受约束的属性设置器方法来支持PropertyVetoException。 此文档向受约束属性的用户说明可能会尝试更新 否决。 因此,简单的受约束属性可能如下所示:
|
![]() |
2
5
Setter完全可以“清理”其参数,如果无效,则抛出异常。 |
![]() |
3
2
如果您认为其他代码应该进行验证,但不应该设置错误的值,那么也可以在setter中使用断言。 |
![]() |
4
1
Joshua Bloch(ISBN-13:978-0-321-35668-0)在《有效Java第二版》一书中说,对于对象创建,最好使用构建器模式,而不是bean约定。
例如(bean模式):
生成器模式的用法:
生成器模式的实现:
|
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 3 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 3 月前 |