1、无论是深复制还是浅复制,被复制的对象类型是不变的。此对象类型具有什么功能就具有什么功能,不会因为自行修改了返回对象的指针类型而改变。比如:这里的str和str1的值和指针地址完全一样,因为是不可变类型使用了copy,什么都不变。为什么NSNumber类型的指针可以指向NSSring类型copy出...
分类:
移动开发 时间:
2015-07-09 17:48:02
阅读次数:
217
/*********************************************** Swift 数组
***********************************************///在swift中,Array也没有可变和不可变类型之分,而且取决于用什么关键字来修饰,var就是可变,let就是不可变 在swift中,使用字面量来给一个...
分类:
编程语言 时间:
2015-07-02 22:43:28
阅读次数:
164
区别1、String是不可变类,StringBuffer是可变类如果要对String对象进行修改,则是新建了一个原来的String的拷贝,并且拷贝是StringBuffer,StringBuffer.toString()转换为String修改是在拷贝上进行的。2、String是线程不安全的,后者是安...
分类:
编程语言 时间:
2015-07-01 23:26:06
阅读次数:
222
protected受保护的:可以在当前类的内部以及该类的子类中访问。ArrayList集合:很多数据的一个集合数组:长度不可变,类型单一集合的好处:长度可以任意改变,类型随便放ArrayList list = new ArrayList();list.Add();添加单个元素list.AddRang...
分类:
Web程序 时间:
2015-06-24 16:18:49
阅读次数:
174
final1.final 类 表示该类不可继承,2.final 方法 表示该方法不可被覆盖3.final 域 表示该字段一被初始化就不能再改变(必须确保在构造器执行之后final域均被设置,且不可改变) final用于基本类型和不可变类型,对象类型不可变的只是引用没有意义4.final...
分类:
编程语言 时间:
2015-06-24 16:14:13
阅读次数:
171
不可变类:一旦创建,状态无法改变
关于创建不可变类有很多规则,下面一一介绍这些规则:
目录
定义不可变类的益处
定义不可变类指南 定义不可变的益处构造简单,便于测试和使用
不可变类自然是线程安全的,无需关心多线程和同步问题
不需要实现clone
可以延迟加载,缓存它的返回值
由于不可变可以用于Map的key和Set的元素(set元素不能重复)
当作为属性时,不需要深度clone 如何让类不可...
分类:
编程语言 时间:
2015-06-09 23:41:49
阅读次数:
371
1、Integerpublic static void main(String[]args) { Integer i=new Integer(1); System.out.println(i.intValue()); i=2; Syst...
分类:
编程语言 时间:
2015-06-08 16:49:55
阅读次数:
132
首先要明白,java只用的wrapper类型都是不可变的,什么是不可变类型呢?顾名思义,就是这种类型的对象一旦创建好之后,无论调用何种方法都无法改变该对象的任何的属性。String 源码中,它的所有属性都是private final的,因此,只有在构造string对象的时候,这些属性才是可以修改的,string类的方法中需要返回一个string的,如subString,concat等方法,都会先构...
分类:
编程语言 时间:
2015-06-08 13:29:38
阅读次数:
240
相信大家看到过很多比较String和StringBuffer区别的文章,也明白这两者的区别,然而自从Java 5.0发布以后,我们的比较列表上将多出一个对象了,这就是StringBuilder类。String类是不可变类,任何对String的改变都会引发新的String对象的生成;而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,可变和不可变类这一对对象已经齐全...
分类:
其他好文 时间:
2015-05-19 13:08:49
阅读次数:
114
不可变类 - String一如既往,在进行学习之前我们先看看相关的定义吧~下面引自 JavaDocs:
Strings are constant; their values cannot be changed after they are created
String 类是不可变的,String 对象的值在创建后不会发生改变。换句话说,我们平常对 String 对象的操作,实际上都是创建了一个新...
分类:
其他好文 时间:
2015-05-17 12:16:28
阅读次数:
90