一道java的题目,大家帮我看看啊

来源:百度知道 编辑:UC知道 时间:2024/06/09 15:17:43
public class Person {

public static void main(String []args){
int arr[]=new int[10];
System.out.println(arr[1]);
}
}
这样的话运行是正确的,而如果是一下的写法的话,编译就会错误了
public class Person {

int arr[]=new int[10];
public static void main(String []args){

System.out.println(arr[1]);
}
}
我是刚学的,不懂这些东西,希望高手指教哦

int arr[]=new int[10]; 在下面你定义的是类的属性,在静态方法是不能访问非静态常量和属性的。

public class Person {

static int arr[]=new int[10];
public static void main(String []args){

System.out.println(arr[1]);
}
} 这样就可以编译了

在静态方法中不能用非静态的变量 。可以这样改:
把static int arr[] = new int[10];//改成静态的就行

哈哈.我也刚学
main方法是静态方法,不能访问外部成员变量

arr[]为非静态变量,main属于静态方法,所以肯定会出错的。