java中的对象传递;

王朝java/jsp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

private void test() throws SQLException{

ResultSet rs = query();

closeAll(rs);

System.out.println("535........关于java对象传递的测试ResultSet:"+rs);

rs.close();

rs = null;

}

private void closeAll(ResultSet rs) throws SQLException {

if (rs != null){

Statement stmt = null;

Connection con = null;

stmt = rs.getStatement();

con = stmt.getConnection();

rs.close();

rs = null;

stmt.close();

stmt = null;

con.close();

con = null;

}

}

打印出的结果:535........关于java对象传递的测试ResultSet:org.apache.commons.dbcp.DelegatingResultSet@2fae4a

--------------

我在closeAll方法中已经把rs = null;了,为什么还能打印出这个对象呢?为什么不打印出null呢?

在java中传递的是引用;创建了引用的副本。rs=null修改了引用的副本,并没有修改对象本身;所以打印出来的还有。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有