java语言对象和变量
在java语言中,当我们在方法中创建对象时,静态变量是否加载在对象中java语言对象和变量,java,Java,在java语言中,当我们在方法中创建对象时,静态变量是否加载在对象中 public class A{ static int x =12; void m1(){ int x=2; A a = new A(); a.x=3; System.out.println(a.x); } public static void ma
public class A{
static int x =12;
void m1(){
int x=2;
A a = new A();
a.x=3;
System.out.println(a.x);
}
public static void main(String[] args) {
A a = new A();
a.m();
}
}
静态变量是否加载到对象中
public class A{
static int x =12;
void m1(){
int x=2;
A a = new A();
a.x=3;
System.out.println(a.x);
}
public static void main(String[] args) {
A a = new A();
a.m();
}
}
不,它们不是。静态变量是类级变量
另见
public class A{
static int x =12;
void m1(){
x=2;
A a = new A();
a.x=3;
System.out.println(a.x);
}
public static void main(String[] args) {
A a = new A();
a.m1();
}
}
你的代码不会编译
a.m()
应该给您错误。您应该首先将m1方法声明为静态。@HelpingHands我认为他不需要将m1声明为静态。Changea.m()代码>到a.m1()对不起,伙计们,我搞错了,应该是a.m1();在main方法中,如果静态变量没有加载到对象中,那么在我的问题中,为什么X中的值会改变。。。???