腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
8
回答
不
可变
类/
对象
、私有
构造
器、工厂方法
、
、
已经阅读了如何通过以下步骤使类不
可变
不要提供修改
可变
对象
的方法。 不要共享对
可变
对象
的引用。不要存储传递给
构造</e
浏览 9
提问于2012-11-30
得票数 10
2
回答
如果可能的话,我应该将对
可变
对象
的引用设置为最终的吗?
我理解,对
对象
字段使用final是一种很好的做法,这些
对象
字段在
构造
函数
中只设置一次,2)对不
可变
对象
的引用。 在
构造
函数
中只设置一次但引用
可变
对象
的字段怎么办?目前,我更喜欢只对不
可变
的
对象
引用使用final,因为我可以快速看到哪些字段表示
对象
的
可变
状态(那些不是最终的)。Update:我知道final在技术上是如何工作的,特别是将对
可
浏览 2
提问于2012-12-10
得票数 1
3
回答
java +应该使instace变量类不
可变
吗?
、
来自: 不要提供"setter“方法--修改字段或字段引用的
对象
的方法。使所有字段都是最终的和私有的。不允许子类重写方法。最简单的方法是将类声明为final。一种更复杂的方法是在工厂方法中使
构造
函数
私有并
构造
实例。如果实例字段包含对
可变
对象
的引用,则不允许更改这些
对象
:不要提供修改
可变
对象
的方法。不要共享对
可变
对象
的引用。不要存储传递给
构造
函数
的外部<
浏览 3
提问于2013-05-19
得票数 1
5
回答
在不
可变
的
构造
函数
方法中验证
构造
函数
参数是个坏主意还是好主意?
、
、
、
您有一个不
可变
的
对象
,并在
构造
函数
中设置它的内部变量,该
构造
函数
接受两个参数。在不
可变
对象
的
构造
函数
方法中是否存在验证
构造
函数
参数的问题,如果无效则抛出ArgumentExceptions?(对我来说,这是有意义的,但我想问一下,如果有更好的方法或不合适的东西,例如,如果它是一个更好的设计,从
构造
函数
转移到一个工厂) ,或者如果我通过重新
浏览 9
提问于2012-12-19
得票数 2
回答已采纳
1
回答
可变
对象
构造
函数
、
考虑下面这个简单的
对象
: var foo = { console.log("foo"); bar: function(){ }foo.bar(); 有没有可能为这个变量
对象
创建一个
构造
函数
,让我只需调用
浏览 12
提问于2019-09-10
得票数 0
2
回答
使类不
可变
的替代方法
、
主题是 包私有
构造
<
浏览 1
提问于2019-02-23
得票数 1
1
回答
将不
可变
构造
函数
和正规
构造
函数
结合在一起?
、
是否可以编写一个
构造
函数
而不是两个
构造
函数
,并且仍然能够同时创建正常的和不
可变
的
对象
?编写普通的和不
可变
的
构造
函数
是很多重复的工作。
浏览 0
提问于2014-01-05
得票数 4
回答已采纳
1
回答
使用纯init设置程序初始化的C#
对象
的验证
、
、
、
重新开启免责声明var o1 = o with { Value = 65537 }; 以前,创建和初始化一个新的不
可变
对象
的唯一选项是使用带有参数的
构造
函数
。新选项更自然、更优雅,但缺少
构造
函数
初始化的一个重要功能:验证。使用
构造
函数
,我可以确保永远不会创建
浏览 3
提问于2020-12-19
得票数 7
2
回答
Ruby中的符号是用
构造
函数
还是初始化器生成的?
、
、
在对的回答中,说: 不
可变
对象
必须在
构造
函数
中初始化。由于符号在Ruby中是不
可变
的,它们是如何制作的?维基百科似乎认为它们必须使用
构造
函数
,但是J rg说Ruby中没有
构造
函数
。总的来说,我对面向
对象
的概念和编程非常陌生,所以我可能遗漏了一些基本的东西,但从我的角度来看,这些来源之间存
浏览 0
提问于2015-02-02
得票数 2
回答已采纳
2
回答
为什么
构造
的临时
对象
const不
可变
?
、
、
、
我有一个类K,并且在调用
函数
test中
构造
一个
对象
。所以我相信
构造
的K被称为r值。(这是真的吗?) K k;} 为
浏览 3
提问于2015-11-06
得票数 4
1
回答
“朱莉娅”中自指不变类型的生成
Julia文档解释了如何使用内部
构造
函数
和新()
函数
构造
自引用
对象
: obj::SelfReferential end 但是,这种方法不适用于不
可变
类型,因为它实际上使用了未完全初始化的实例x的突变。如何在Julia中生成自引用的不
可变
对象
?
浏览 4
提问于2016-10-04
得票数 9
回答已采纳
1
回答
如何复制
对象
的防御性副本?
、
、
如何对包含不
可变
对象
中的
可变
字段的
可变
对象
进行防御复制?this.immutable_field = y;} } MutableObject没有允许我设置字段的
构造
函数
应在不
可变
对象
中捕获MutableObject的当前状态,并且永不更改。
浏览 4
提问于2010-06-02
得票数 3
回答已采纳
2
回答
不
可变
对象
是否不受不正确发布的影响?
、
、
、
然而,霍尔德可以通过宣布n字段为最终属性而免于不当发布,这将使Holder不
可变
; 因为:(可能是错的,我不知道。)共享变量可以在内联
构造
函数</em
浏览 3
提问于2016-02-03
得票数 2
回答已采纳
2
回答
为什么java.time有创建
对象
的方法而不仅仅是
构造
函数
?
、
在新的java.time包中,核心类使用工厂方法of而不是公共
构造
函数
。即使我喜欢of方法的化妆品,我也找不到不使用
构造
函数
的好理由。引用教程的话: 日期时间API中的大多数类创建不
可变
的
对象
,这意味着在创建
对象
之后,它不能被修改。若要更改不
可变
对象
的值,必须将新
对象
构造
为原始
对象
的修改副本。这也意味着日期时间API在定义上是线程安全的.这会影响API,因为用于创建日期或时间<em
浏览 0
提问于2016-06-22
得票数 10
回答已采纳
3
回答
如何在Java中创建一个不
可变
的单例?
、
、
不
可变
对象
仅由其
构造
函数
初始化,而单例
对象
由静态方法实例化。如何在Java中创建一个不
可变
的单例?
浏览 0
提问于2011-02-03
得票数 6
回答已采纳
1
回答
C++内存模型是否为
构造
函数
的操作提供了保证
、
、
、
如何确保新
构造
的不
可变
对象
在C++中的线程之间安全地共享?C++内存模型是否为
构造
函数
的操作提供了保证? 当您有共享对
对象
的访问的多个线程,并且该
对象
被修改时,竞争危险是可能的。对
对象
的后续访问不需要使用锁(互斥)就可以避免种族危险。在极端情况下,
对象
是:一旦
构造
,它就永远不会改变。因此,在多线程程序中尽可能多地使用不
可变
对象
是一种成语。这仍然需要在
构造
函
浏览 1
提问于2017-11-23
得票数 2
2
回答
BigDecimal是可扩展的,并且没有复制
构造
函数
.这是安全风险吗?
、
、
、
根据有效的Java项目24 (在需要时制作防御性副本),
可变
对象
会带来安全风险,特别是在作为
构造
函数
参数传递时。鼓励一个人在必要时复制防御性的副本。更糟糕的是,BigDecimal没有提供副本
构造
函数
。
浏览 1
提问于2018-02-20
得票数 1
回答已采纳
3
回答
使用静态创建不
可变
对象
、
、
在创建不
可变
类时,有时
构造
函数
是私有的,并且使用静态工厂来创建
对象
。即使是Java自己的文档也支持在创建不
可变
对象
时使用工厂。 一种更复杂的方法是在工厂方法中使
构造
函数
私有并
构造
实例。
浏览 0
提问于2017-10-22
得票数 4
3
回答
具有
可变
类引用的不
可变
类
、
假设我正在创建一个具有
可变
类引用地址的不
可变
类雇员。如何使用场景创建不
可变
类。 不要共享对
可变
对象
的引用。不要存储传递给
构造
函数
的外部
可变
对象
的引用;如果需要,请创建副本,并存储对副本的引用。类似地,在必要时创建内部
可变
对象
的副本,以避免返回方法中的原始
对象
。
浏览 4
提问于2014-03-19
得票数 1
2
回答
关于
构造
函数
与静态工厂方法
我有一个查询,如果我们在类中有
构造
函数
,如下所示。class A A{} 现在,
构造
函数
的替代方法是什么,我已经采用了静态工厂方法{ {} 在上面的方法中,根据分析,它将返回不
可变
的
对象
,但我对此分析有疑问,因为该
对象
可以用静态工厂方法返回,并且可以在以后更改,如何使其完全不
可变
..!!
浏览 3
提问于2012-08-17
得票数 1
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券