静态引用??
public class PassValue {
public static void main(String[] args){
int x=5;
change(x);//为什么如果change()不是静态方法会出现"不能对类型 PassValue 中的非静态方法 change(int)进行静态引用
System.out.println(x);
}
public static void change(int y){
y=3;
}
希望高手解释一下?谢谢!
----------------解决方案--------------------------------------------------------
首先你要明白静态与非静态的关系,静态可以调用非静态,反之jvm就会抗议,
----------------解决方案--------------------------------------------------------
class YiYong{
int m;
public static void main(String[] args){
YiYong n=new YiYong();
n.m=1;
change(n);
System.out.println(m);//不能是m,需是n.m,按楼上说,直接用m就行了?????
}
public static void change(YiYong u){
u.m=0;
}
}
----------------解决方案--------------------------------------------------------
因为在你调用静态方法的时候,引入非静态的属性和方法可能没实例化。
----------------解决方案--------------------------------------------------------
面向对象的思维还没有形成
----------------解决方案--------------------------------------------------------
静态的东西是属于类,而动态的东西是属于对象
----------------解决方案--------------------------------------------------------
是一个细节问题,翻翻书找到了答案,谢谢各位!
----------------解决方案--------------------------------------------------------