婷小猴
2017-04-06 22:49
public class HelloWorld {
// 定义静态变量score1
static int score1 = 86;
// 定义静态变量score2
static int score2 = 92;
// 定义静态方法sum,计算成绩总分,并返回总分
public static int sum() {
int sum=score1+score2;
return sum;
}
我也是给你百度的啊
无论是静态方法还是非静态方法,他里面的变量都属于局部变量。而局部变量是不能定义成静态类型的,静态类型的都是在初始化类的时候最先初始化的,存在在方法区的静态代码块里,如果你定义了静态的局部变量,那么就会造成在还没调用的时候这个局部变量却已经初始化好了,局部变量是木有初始化值的。
而且吧,我觉得,把局部变量定义成静态的是一种浪费。。。你函数执行完了,局部变量就没啥用了,如果你定义成静态的了,那么就一直就在那存着,多浪费空间。
再者说,如果你想要这个变量一直有用,你就得把他定义成成员变量,成员变量是可以定义成静态的
是的,局部变量不需要static声明。因为它只在静态方法内部起作用,而且只在类装载的时候执行一次而已。
定义为static 的变量是和类相关的,也就是说它是类变量,所以只能定义为全局变量而不是局部变量
Java入门第二季 升级版
531114 学习 · 6326 问题
相似问题