锁定老帖子 主题:一个常见的JDBC封装导致的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (11) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-16
kakaluyi 写道 悲剧了 写道 gaosheng08 写道 close()中还要加一句instance = null;
调用的时候传进来的就是instance ,这个connection是通过这个类的getConnection()得到的 lz你难道不知道java通过close方法传递进去的instance只是个引用吗,真正的instance是不会置为null的?? 在类的定义中既然有了 private static Connection instance=null; close()方法中就不要传Connection进去了 |
|
返回顶楼 | |
发表时间:2011-05-16
算了解释一下,发现楼主还是云里雾里
public void static main(String args[]) { int i=3; changevalue(i); System.out.println(i); //你以为i现在是2吧,错了,i还是3!不好意思楼主,你理解错误了。这个是很容易搞错的概念 } public void changevalue(int i) { i=2; } |
|
返回顶楼 | |
发表时间:2011-05-16
lz的java基础太不扎实了,先把基本功打好吧
|
|
返回顶楼 | |
发表时间:2011-05-16
public static Connection getConnection(){ if(instance==null){ new ConnectionUtil(); } return instance; } 你这是什么意思?instance为空的时候,创建了Util对象,instance本来就是个静态类,你创建100个对象,里面的instance还是一个,还是空。 |
|
返回顶楼 | |
发表时间:2011-05-16
kakaluyi 写道 悲剧了 写道 gaosheng08 写道 close()中还要加一句instance = null;
调用的时候传进来的就是instance ,这个connection是通过这个类的getConnection()得到的 lz你难道不知道java通过close方法传递进去的instance只是个引用吗,真正的instance是不会置为null的?? 哥们我明白了 con,intance 两个引用指向同一个栈,con为空但intance不为空,开始是以为传进去的是intance Connection con=instance con=null 但intance不为空 哎,悲剧,估计又要挨骂了 |
|
返回顶楼 | |
发表时间:2011-05-16
kakaluyi 写道 算了解释一下,发现楼主还是云里雾里
public void static main(String args[]) { int i=3; changevalue(i); System.out.println(i); //你以为i现在是2吧,错了,i还是3!不好意思楼主,你理解错误了。这个是很容易搞错的概念 } public void changevalue(int i) { i=2; } 恩,明白了,谢了 |
|
返回顶楼 | |
发表时间:2011-05-16
close方法中的connection参数值传递
|
|
返回顶楼 | |
发表时间:2011-05-16
悲剧了 写道 kakaluyi 写道 悲剧了 写道 gaosheng08 写道 close()中还要加一句instance = null;
调用的时候传进来的就是instance ,这个connection是通过这个类的getConnection()得到的 lz你难道不知道java通过close方法传递进去的instance只是个引用吗,真正的instance是不会置为null的?? 哥们我明白了 con,intance 两个引用指向同一个栈,con为空但intance不为空,开始是以为传进去的是intance Connection con=instance con=null 但intance不为空 哎,悲剧,估计又要挨骂了 正解, java也没有多少难点,恭喜你突破了一个 |
|
返回顶楼 | |
发表时间:2011-05-16
kakaluyi 写道 悲剧了 写道 kakaluyi 写道 悲剧了 写道 gaosheng08 写道 close()中还要加一句instance = null;
调用的时候传进来的就是instance ,这个connection是通过这个类的getConnection()得到的 lz你难道不知道java通过close方法传递进去的instance只是个引用吗,真正的instance是不会置为null的?? 哥们我明白了 con,intance 两个引用指向同一个栈,con为空但intance不为空,开始是以为传进去的是intance Connection con=instance con=null 但intance不为空 哎,悲剧,估计又要挨骂了 正解, java也没有多少难点,恭喜你突破了一个 哈哈,谢了。 |
|
返回顶楼 | |
发表时间:2011-05-16
楼主JAVA基础不牢固,导致代码出现问题。
|
|
返回顶楼 | |