java操作数据库时在while循环里面new一个对象和在while循环外面new一个对象有什么区别?

在while循环外面new对象时登录无论怎样都是成功的,而在while循环里面new对象时输入正确才登录成功!这是为什么啊?

如果while只循环一次,这个没什么影响,如果循环多次,在循环里面new的话,会产生多个对象,占用内存。你这应用场景,结果其实一样,建议用第二种,在循环外面new
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-09-21
你这截图不全啊,后面的判定过程没有展示出来
本质上没什么区别
但如果你的登录方法判定的是
if(Login(name,password)!=null){System.out.println("登陆成功");}
那么你在里面new对象还是在外面new对象就有区别了
如果在while里new对象,那么查询不到会返回null,会判定登录失败
如果在while外new对象,无论是否查询到记录都会返回一个User对象,只是这个对象里的uName和uPwd属性都没被修改过
一般来说像题主这样用最基本的jdbc操作获取数据库中的数据,还是应该在try外面声明对象,内部new对象并赋值,这样至少能保证return的时候不会出错,至少能return个null本回答被提问者采纳
相似回答