String1,Stirng是对象不是基本数据类型2,String是final类,不能被继承。是不可变对象,一旦创建,就不能修改它的值。3,对于已经存在的Stirng对象,修改它的值,就是重新创建一个对象,然后将新值赋予这个对象StringBuffer1,一个类似于 String 的字符串缓冲区,对...
分类:
其他好文 时间:
2015-05-09 01:12:08
阅读次数:
131
这里面涉及到两个类,一个是person类,一个是测试类test
首先我们说到的是浅克隆,对某个对象实施Clone时对其是一无所知的,它仅仅是简单地执行域对域的copy,如果是基本数据类型(int,float,char等)到没什么问题,基本遇上如string,Integer等不可变对象的时候也没有什么问题,但是如果遇上了date这个可变对象,或者是自己定义的可变对象,他只是简单的复制一些引...
分类:
编程语言 时间:
2015-05-07 10:30:36
阅读次数:
137
转自http://developer.51cto.com/art/201503/468905.htm本文主要来介绍一下Java中的不可变对象,以及Java中String类的不可变性,那么为什么Java的String类是不可变对象?让我们一起来分析一下。答案一:最流行的Java面试题之一就是:什么是不...
分类:
编程语言 时间:
2015-04-13 18:02:13
阅读次数:
181
final成员:(1)在类中定义变量时,当用final修饰时,说明此变量一旦被初始化便不可变,基本类型值不可变,对象变量是引用不可变。其初始化可以在两个地方:一个是其定义处,一个是在构造函数中,二者只能选其一。(2)定义方法中的参数为finalfinal方法:不允许子类重写(override)此方法...
分类:
其他好文 时间:
2015-04-09 15:10:08
阅读次数:
174
String类指向不可变对象,一旦修改String类的值,则创建新的对象,释放旧的对象。StringBuffer类可以修改对象的值。StringBuffer的创建需要 StringBuffer sb = new StringBuffer();如果在程序中频繁进行修改链接操作的话,StringBuff...
分类:
其他好文 时间:
2015-04-08 12:30:27
阅读次数:
135
------iOS培训、Java培训、Android培训, iOS学习型技术博客,期待与您交流------/*NSString : 不可变字符串NSMutableString : 可变字符串*/NSString// OC字符串NSString的创建void createNSString(){ /*....
分类:
其他好文 时间:
2015-04-08 10:26:13
阅读次数:
168
本节将学习元组、字典,以及其他涉及到的相关知识1.元组 (tuple) 元组由圆括号括起来,元素之间用逗号相隔。元组是不可变对象,一旦定义了,就不能更改>>> t=('a','b','c')>>> t[1]'b'>>> t[1]=4Traceback (most recent call last):...
分类:
编程语言 时间:
2015-04-07 17:34:13
阅读次数:
344
创建后状态不能修改的对象叫做不可变对象。不可变对象天生是线程安全的。它们的常量(域)是在构造函数中创建的。既然它们的状态无法修改,这些常量永远不会变。 ????????不可变对象永远...
分类:
编程语言 时间:
2015-04-05 12:06:05
阅读次数:
146
浅复制:只复制指向对象的指针,而不复制引用对象本身。计数器+1 ,就像比如retain深层复制:复制引用对象本身。计数器不变,产生新对象retain:始终是浅复制。引用计数每次加一。返回对象是否可变与被复制的对象保持一致。copy:对于可变对象为深复制,引用计数不改变;对于不可变对象是浅复制,引用计...
分类:
其他好文 时间:
2015-04-02 14:52:52
阅读次数:
114
浅复制:只复制指向对象的指针,而不复制引用对象本身。计数器+1 ,就像比如retain深层复制:复制引用对象本身。计数器不变,产生新对象retain:始终是浅复制。引用计数每次加一。返回对象是否可变与被复制的对象保持一致。copy:对于可变对象为深复制,引用计数不改变;对于不可变对象是浅复制,引用计...
分类:
其他好文 时间:
2015-04-01 21:35:47
阅读次数:
162