java 每次调用对象方法都要初始化成员变量?

windxiaan 2017-10-30 11:08:04
代码如下:
package test;
public class Test1 {
int m = method();
int n = 1;
int method() {
return n;
}
}

package test;
public class Test {
public static void main(String[] args) {
Test1 t1 = new Test1();
System.out.println(t1.n);
t1.n = 1;
System.out.println(t1.m);
}
}

我的理解是输出:
1
1

但运行后输出:
1
0

t1.n = 1;
不是把对象t1的n赋值为1了,t1.m应该也是1了啊
...全文
342 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
windxiaan 2017-10-30
  • 打赏
  • 举报
回复
感谢了,Test类中m只初始化一次,后面再调用m无须在初始化m了
残风炫舞 2017-10-30
  • 打赏
  • 举报
回复
首先只在你new的时候初始化了一次 1.int m = method() = n = 0(此时n初始化为0,还未赋值) 2.int n =1 3.print (t1.n) ==>1 4.t1.n = 1 m未变 5.print(t1.m) ==>0

51,410

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧