当前位置: 首页 > wzjs >正文

企业的外币收入外管局网站做啥seo视频教学网站

企业的外币收入外管局网站做啥,seo视频教学网站,义乌网站建设联系方式,山东德州网站建设一个很经典的问题: java的方法入参 是值传递还是地址传递? 答案是:值传递。 今天排查一个生产问题,数据库链接资源没有关闭。 大致代码逻辑如下: try{Preparestatement ps null;String sql "select * from tableA wher…

一个很经典的问题: java的方法入参 是值传递还是地址传递?

答案是:值传递。

今天排查一个生产问题,数据库链接资源没有关闭。

大致代码逻辑如下:

try{Preparestatement ps = null;String sql = "select * from tableA where id=?";this.query(ps,sql);
}catch(Exception e){logger.error("error:",e);
}finally{if(ps!=null){ps.close();}
}private void query(Preparestatement ps ,String sql){ps = this.getPreparestatement();........//不重要的查询逻辑
}

可以看到 对象实例 ps 被传到了一个私有方法:query(Preparestatement ps ,String sql) 里,并在方法里面进行赋值。然后在方法外进行判空关闭。

很明显,这段代码的作者,并不熟悉JAVA的值传递机制,虽然ps被传到方法里赋值,但是方法外的ps对象依然还是null,所以finally模块里的代码并没有执行close。只是表面看起来会关闭资源。

实际上,方法外的ps,和方法里面的ps 并不是同一个对象,或者说并不是指向同一个地址。java传递的是值而不是地址。这是和C语言最大的区别。

Java可以在方法里修改对象的属性(如 a.setName("myName")),这种修改是可以影响到方法外的对象,但是并不能通过=号,对对象进行重新赋值来影响方法外的对象(如a=getNewObject())

http://www.dtcms.com/wzjs/142743.html

相关文章:

  • 英文做影评的网站上海今天发生的重大新闻
  • 网站建设方案报价单如何接广告赚钱
  • 教务管理系统是应用软件吗杭州seo网站排名
  • 示范建设验收网站做一套二级域名网站怎么做
  • 专业做网站广州百度关键词刷排名软件
  • 中国建设监理协会网站继续教育开发软件app需要多少钱
  • 安阳网站建设哪家公司好百度自动驾驶技术
  • dw可以做有后台的网站么?营销软文模板
  • 汉沽做网站友情下载网站
  • 莱芜网站建设哪家好国外seo
  • 招生网站制作网络营销论文题目
  • 国外做微课的网站网站排行榜查询
  • 沈阳做网站费用商旅平台app下载
  • 河南便宜网站建设价格低舆情监测系统
  • wps可以做网站吗百度网游排行榜
  • 中小型企业网站大全办理培训机构需要具备的条件
  • 做求职网站企业宣传网站
  • 东莞网站建设营销平台的个人发布信息的免费平台
  • 网站视觉设计微信营销平台系统
  • 徐州好点的做网站的公司关键词异地排名查询
  • 珠海网站关键词推广百度地图打车客服人工电话
  • 专门做水产海鲜的网站吗b站免费建网站
  • 做搜狗pc网站软件网站优化方式有哪些
  • 磐石市住房和城乡建设局网站口碑营销有哪些方式
  • 做如美团式网站要多少钱中国女排联赛排名
  • 免费图标下载网站网站关键词在线优化
  • 福建省网络公司排名seo排名点击首页
  • .net给网站做短信验证长沙谷歌seo收费
  • 海宁网站设计公司长沙网站推广公司
  • 公司展厅布置效果图手机端关键词排名优化