哪些场合下最好用不可变类? 不可变类 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public final class?里不希望这个类被继承的时候这么用,一般事工具类,如StringUtil 我说的不可变类不是说一定要用final申明,而是一旦创建就无法改变内容的类 1、首先给楼上各位说一下不可变类,final的确是一种方式,但是final修饰的成员变量的内容还是会改变的,不可变在实现上对于所有的可访问引用类型大多都需要使用保护性拷贝来实现。2、回答楼主问题:出现的场合,比如你项目初始化一些不可变的参数,例如你使用一个map保存了项目中所有的配置文件的键值对,这些键值对是永不变的,为了防止客户的改变,你可能就需要使用不可变类,每个返回给用户一个保护性的拷贝。只要不是固定的,永不改变的东西,对于类的设计都不需要不可变类,不可变的类的实现也是需要消耗一定的内存和性能的。 请问怎么读取jar内部的resource文件? 求助:IBM Aglets,用http传输时的配置 关于 JNI的问题。 两个java图形方面的小问题 求一句sql 请问JAVA中日期的问题 向各位请教一个线程中断的问题! 请问如何计算某一天三个月后的时间(比如2002-10-3=>2003-1-3) 大家来讨论!关于application、Swing编程的一些很令人头疼的问题! 愿送100分,有谁能解释这幅图的关系及意思? 求教JDBC大数据插入的问题 一个有关GUI界面的问题,求高手帮忙解答 感激不尽
里不希望这个类被继承的时候这么用,一般事工具类,如StringUtil
2、回答楼主问题:出现的场合,比如你项目初始化一些不可变的参数,例如你使用一个map保存了项目中所有的配置文件的键值对,这些键值对是永不变的,为了防止客户的改变,你可能就需要使用不可变类,每个返回给用户一个保护性的拷贝。
只要不是固定的,永不改变的东西,对于类的设计都不需要不可变类,不可变的类的实现也是需要消耗一定的内存和性能的。