我的Java程序中出现以下错误:
Java变量未初始化错误...错误:变量nam和r没有 初始化的位置类子
但是nan
和r
已初始化,但我仍然遇到同样的错误。
public class cla {
int rn;
String name;
void get(String a, int x) {
name = a;
rn = x;
}
void display() {
System.out.println("student name: " + name + "roll no.:" + rn);
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class child {
public static void main(String args[]) throws IOException {
String nam;
int r;
BufferedReader bReader = new BufferedReader(new InputStreamReader(
System.in));
try {
System.out.println("enter name and roll no.");
nam = bReader.readLine();
r = Integer.parseInt(bReader.readLine());
} catch (Exception e) {
}
cla c = new cla();
c.get(nam, r);
c.display();
}
答案 0 :(得分:2)
Local variables
未获得默认值,您应该在使用它们之前初始化它们,使用默认值初始化nam
和r
你会好起来的。
public static void main(String args[]) throws IOException{
String nam=null;
int r=0;
顺便说一下,考虑将你的类和变量命名为有意义的东西。
答案 1 :(得分:0)
在使用之前初始化您的局部变量,就像上面的情况一样 String nam =“”或者也可以为null; int r = 0;
当我们在类中定义任何实例变量时,它们是默认初始化的,例如。 int为0但是在使用之前需要初始化局部变量。
谢谢, Brijesh
答案 2 :(得分:0)
根据您使用的数据类型,最好为变量赋值null或零。如果你查看你的代码,你会看到你没有告诉变量它们的值,例如你有一个变量r;相反,在你开始使用它之前,让你的整数知道它内部没有任何东西,就像这个int r = 0;
一样。这样你的java程序就会知道它在你使用那个变量时会覆盖现有的值。告诉你变量他们持有什么是java调用初始化。把它带到日常活动中,并在编码时看到它。