Jus*_* R. 1 language-agnostic oop reference instance
想象一下,我有一个很好的Deck课程,以最好的OO方式.它有卡片,有套装和等级,有Shuffle方法,等等.现在,我将有很多并发的Deck实例(比如这是一个赌场).问题是:所有甲板上的每张卡都应该有不同的实例吗?
Lor*_*nVS 6
Card对象可能最好实现为不可变对象.为了创建一张牌,你必须传递一个套牌和一个等级,这个套装和等级将永远不会改变.
从这个角度来看,由于这些对象不会改变,并且由于有一组开始,因此实现包含所有52个可能的Card对象的单个静态集合是有意义的,并从其他类访问这些卡(make Card private上的构造函数,因此无法在Card类之外创建一个卡).
这里真正的区别是卡本身不执行任何操作,其他操作将对卡进行操作,因此制作单个卡实例应该没问题.
归档时间:
16 年,4 月 前
查看次数:
88 次
最近记录: