为了账号安全,请及时绑定邮箱和手机立即绑定

既然main方法为静态方法,在里面定义一个非静态变量,为什么可以直接打印出来。不会报错

public class HelloWorld {

 public static void main(String[] args){

                   int i=0;

                   System.out.println(+i);

    } 

}

正在回答

5 回答

静态变量与非静态变量都是针对类的成员变量来定义的,你这里定义的变量属于局部变量

0 回复 有任何疑惑可以回复我~

关于变量在main方法里可以直接使用。那是因为变量存在方法体里,它的加载是随着方法加载的,与类是否实例毫无关系。

0 回复 有任何疑惑可以回复我~

+i  是什么鬼啊?如果是想表达自增的话你可以写成++i 或 i++

输出++i会显示1,输出i++则显示0。

++i表示先自增后赋值

i++表示先赋值后自增

0 回复 有任何疑惑可以回复我~

声明的局部变量

0 回复 有任何疑惑可以回复我~

在函数内部肯定是可以使用这个非静态变量的,只是在外部不行罢了。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

既然main方法为静态方法,在里面定义一个非静态变量,为什么可以直接打印出来。不会报错

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信