黑马程序员技术交流社区

标题: 大家来试试基础,看自己学的怎么样 [打印本页]

作者: 青菜市场    时间: 2015-12-22 19:27
标题: 大家来试试基础,看自己学的怎么样
1.给定java代码,如下:  
public class Test{
static int i=0;
public int aMethod( ){
i++;
return i;
}
public static void main(String [] args){
Test test = new Test( );
test.aMethod( );  
System.out.println(test.aMethod( ));
}
}编译运行后,输出结果是( )。
要答案的朋友回帖,我会给你放答案加讲解


作者: lixy    时间: 2015-12-22 20:11
我觉得答案是1,就是搞不清类和方法创建在内存的位置,等你的答案和讲解
作者: lixy    时间: 2015-12-22 20:15
经我验证,基础还是太薄弱了
作者: Hi.。    时间: 2015-12-22 22:53
每次执行依据test.aMethod(); 就会自增一次。因为i是共享数据,多次操作指向同一数据源
作者: 南无ice    时间: 2015-12-22 23:16
应该是2
new 一对象的时候方法区有 int i
test.aMethod( );  //这个执行方法 i++  变为1;
System.out.println(test.aMethod( )); //执行此方法时候i++  再加1 变为2。
对吗。我刚学到异常。卡住了。 感觉总是用的不熟练
作者: 青菜市场    时间: 2015-12-23 11:44
南无ice 发表于 2015-12-22 23:16
应该是2
new 一对象的时候方法区有 int i
test.aMethod( );  //这个执行方法 i    变为1;

对,关于异常我不是很熟,只会抛和try怎么处理还是不会
作者: 青菜市场    时间: 2015-12-23 11:46
lixy 发表于 2015-12-22 20:15
经我验证,基础还是太薄弱了

嗯,加油,我还会继续出基础题测试,欢迎看我的其他贴
作者: boboyuwu    时间: 2015-12-23 13:02
答案是2。。。。。。。。。。。。。。。。。。。。。
作者: boboyuwu    时间: 2015-12-23 13:06
lixy 发表于 2015-12-22 20:11
我觉得答案是1,就是搞不清类和方法创建在内存的位置,等你的答案和讲解

答案是2 啊  哪来的1 啊???????
作者: 雨非飞飞    时间: 2015-12-23 13:33
我基础很薄弱啊
作者: lixy    时间: 2015-12-23 20:34
boboyuwu 发表于 2015-12-23 13:06
答案是2 啊  哪来的1 啊???????

是的,我就说基础薄弱了,怎么来的呢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2