dfsf p= new dfsf();
在内存中分配出一块空间,创建了类dfsf的对象
p.amethod(i);
是把i的值传入进去,最后输出i的时候为什么是10,是因为你传的只是值,并不是引用,所以你改变的也只是方法中i的值变成20了,但是出了这个方法,i的值仍然是10,可以用局部变量这个来想
j的值变成40的是因为j是静态的,静态变量在内存中只存在一个,所以当你局部改变它之后,它在内存中的值也就改变了
看好你哦,好好学
dfsf p= new dfsf();
创建dfsf对象
p.amethod(i);
p调用方法amethod(i)
简单地说, i是局部变量,你传递的是值,不是i本身
鉴于楼主对创建对象和调用方法还不知道,可能是刚刚开始学吧,所以建议还是去弄一本书来看,都是很基础的知识,你看了以后,就明白为什么了
第一行是要实例化以后才能调用dfsf()的方法。
第二行是调用dfsf()的方法。
因为传过去的是值类型,只是作为参数传过去的,并不是引用类型,如果是引用类型的话就是20了,比如传指针过去就是引用类型。
1. 静态方法(main)想访问非静态成员需要实例化该类(dfsf)
2. amethod方法中把i的值(10)传了过去,但是并不是i本身,i本身还是10
构造方法,,初始化用的。
标签:java,指教,高手