public class ReferenceType {
public void changeReference(Point point) {
point = null;
}
public static void main(String[] args) {
Point point = new Point(1, 2);
ReferenceType test = new ReferenceType();
test.changeReference(point);
int x = point.x;
System.out.println("x 的值是 " + x );
}}
test.changeReference(point); 调用这个后,下面是否会报空指针呢?
不报,可是为什么呢?
public void changeReference(Point point) {
point = null;
}
public static void main(String[] args) {
Point point = new Point(1, 2);
ReferenceType test = new ReferenceType();
test.changeReference(point);
int x = point.x;
System.out.println("x 的值是 " + x );
}}
test.changeReference(point); 调用这个后,下面是否会报空指针呢?
不报,可是为什么呢?
解决方案 »
- 这样创建session对不对?
- java 读取orcale blob 生成图片保存到D盘
- struts2拦截器中,发现session过期,如何在拦截到的ajax请求后跳转页面
- [请教]为什么在WINDOWS 2003 64位服务器写注册表不成功呢?
- JAVA工程路径页面显示问题
- 谁能给一段JFreeChart1.08 版BarChart3DDemo2.java的源码,是三维簇状柱形图的
- 请高手帮忙关于jb2006混淆的问题(整的我都头大了)
- resin启动时出现的一个错误,请求各位帮助
- struts-Menu可以配置中文目录么
- 我有好多问题急需解决
- 网页不用框架用表格怎么实现主次模块?
- 求助,一个关于不同服务器页面间传参的问题
执行到这里得时候:把 point传进changeReference()里面public void changeReference(Point point) {
point = null; //这里得point是changeReference里的局部变量,只在changeReference中有效
//和前面那个point没有任何关系,只是碰巧重名了
} int x = point.x;所以不会报异常。如果把changeReference函数改下,就好理解了public void changeReference(Point point2) {
point2 = null;
}