a reference to this StringBuffer object.
在就是答案
在就是答案
解决方案 »
- 一编程题?如何触发ArithmeticException异常和IllegalArgumentException 异常
- 一个JFrame的问题,急!
- Swing中动态显示数据库数据
- 软件包装中的一个问题。
- socket通信问题
- 大家帮我看一个程序?
- 画图板——毕业设计
- 菜鸟问题: 关于右键菜单的问题!
- 一个简单的问题
- 方法都在方法区,如果我的非静态方法没有使用在堆中的非静态变量,(通常会定义成静态)而我没有把方法定义成静态,为什么还是不能直接用“类名.方法”使用
- JBuilder的Bug,还是程序有问题?Help!!在线等待!!!
- 关于JAVA生成可执行文件JAR的问题,我的JAR文件怎么使用已经打包好的其他.jar文件!
你说的第二个问题,我感到有些迷惑。
那我要把握 y = x; //中的y用x表示成AB,那我该怎么做?
我这里有一个不是很准确但是很管用的方法:
在java中所有对象变量实际上操纵的都是内存地址,和c中的指针相似,那么就可以把它看成整数,不能改变整数的地方就不能改变引用。
而用"."操作符的地方的情况就不一样了。
http://expert.csdn.net/Expert/topic/1611/1611155.xml?temp=.3623621
http://www.javaresearch.org/article/showarticle.jsp?column=1&thread=706
http://www.javaresearch.org/article/showarticle.jsp?column=1&thread=3156&message=7486&redirect=true&hilite=true&q=%B4%AB%B5%DD
static void operate (StringBuffer x, StringBuffer y) { }
这时候,x和y分别是指向a和b的两个地址的指针,x=a(是地址相等) y=b(也是地址相等)
但是x.append()函数,改变了x指向的地址的内用,而a也指向相同的地址,所以,a指向的地址里面的值也变化了。但是y = x;是改变y指向的内存地址,也就是说y=x(内存地址相等)。但是这时候b指向的内存地址里面的指没有变化!所以
system.out.printIn{a + “,” +b};
输出的是a地址里面的值,和b地址里面的值
祝你好运!