的Java 1.8扫描器进口

的Java 1.8扫描器进口

问题描述:

我的代码是:的Java 1.8扫描器进口

package apple; 

import java.util.Scanner; 

class bucky { 
    public static void main(String args[]) { 
     Scanner bucky = new Scanner(System.in); 
     System.out.println(bucky.nextLine()); 
    } 
} 

在运行时,它说: “转换局部变量场@巴基”。
还有资源泄漏:巴基从未关闭。

+1

提示:阅读java编码风格指南。类名以大写字母开头。正如Hadar所说:尝试使用独特的名字。并且:使用名称来说明背后的事物的使用目的。 “巴基”什么都没说;像“scannerForUserInput”这样的名字会出什么问题 – GhostCat

+0

非常怀疑有这样的消息,“跑步时”。请明确你得到哪些错误以及何时发生。 –

+0

与标签“霓虹灯”的关系是什么? (“NEON是ARM处理器的向量处理指令集”。) - 我将删除该标签。 –

您的班级名称和变量(扫描仪)名称相同(bucky)。试图改变其中的一个

+0

虽然不推荐变量名与类名相同,但不是错误。 –

它说转换局部变量还田@巴基

也就是说只能由IDE的建议。对你简单的代码来说毫无意义。

资源泄漏。巴基从未关闭。

虽然是正确的,这是一个资源泄漏是bucky.close()是从来没有所谓的,你真的不需要在这里,而且往往容易出错关闭标准输入Scanner

是的,你应该改变你的类名更具描述和CamelCased

它是一个很好的做法,开始用大写字母的类名称。正如@Hadar指出的那样,问题在于你的类名与变量名相同。并且也永远不会忘记关闭扫描器导入。您还可以了解试用块以避免资源泄漏

+0

那是一个“问题”?代码运行良好。 –

+0

这实际上不是问题。但最好不要将它们命名为避免混淆 –