2 tenforever tenforever 于 2013.08.26 21:54 提问

Java基础一个问题,求帮忙解答

有一个java类
public final class Test{
private long position = -1;
public void method(){
position++;
}
}
当系统中A访问Test method后,position值为多少,B再访问Test method后,position值为多少?
为什么,求帮忙解答?

2个回答

u011084625
u011084625   2013.08.27 09:29
已采纳

访问之后,position的值始终为0,这是一个final类,每次进去访问时,position的初始值都是从-1开始的,在经过method()方法后,它的值变为0,但是下一次访问时,position的值又是从-1开始的。因此,始终为0;楼主不要被final迷惑

shaojie519
shaojie519   2013.08.26 23:41

对同一个对象来说,Test test = new Test(); 每次调用mehtod方法,position都加1了。楼主可能对final class 有疑惑,final class修饰class,表示这个类不能被其他类继承而已,属性还是可以改变的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!