本文共 513 字,大约阅读时间需要 1 分钟。
class A {
int i;// right i为属性,系统会默认该值为0void f() { System.out.printf("%d\n", i);}void g() { int i;//error 这是一个局部变量,系统分配的是辣鸡值,会认为没有初始化,c语言会认为没有错System.out.printf("%d\n", i);//error 这是一个局部变量,系统分配的是辣鸡值,会认为没有初始化,c语言会认为没有错,若只定义i不出错,但是当要引用的时候就会出错}void k (int i) { this.i=i;System.out.printf("%d\n", i);}}
public class Test {
public static void main(String[] args) { int i;//right A aa=new A(); aa.f(); System.out.printf("%d\n", i);//eror同样会认为引用的时候i没有赋值}
}
转载于:https://blog.51cto.com/13930723/2357756