对运行结果表示不理解,哪位大神能解读一下代码?帮我理解一下?
packageday14;classMyClass2{staticintcount=0;publicMyClass2(){count++;System.out.print...
package day14;
class MyClass2 {
static int count=0;
public MyClass2(){
count++;
System.out.println(count);
}
}
public class TestMain{
public static void main(String[] args) {
MyClass2 mc1=new MyClass2();
MyClass2 mc2=new MyClass2();
MyClass2 mc3=new MyClass2();
}
}
运行结果1,2,3 展开
class MyClass2 {
static int count=0;
public MyClass2(){
count++;
System.out.println(count);
}
}
public class TestMain{
public static void main(String[] args) {
MyClass2 mc1=new MyClass2();
MyClass2 mc2=new MyClass2();
MyClass2 mc3=new MyClass2();
}
}
运行结果1,2,3 展开
1个回答
展开全部
count是静态变量,只会进行一次初始化进行赋值,不会被销毁,原来的值一直在,直到程序不再运行,所以第一次实例化调用构造函数时count=0,count++=1,第二次实例化调用构造函数时,count的值还是之前的1,count++=2,同理第三次等于3,如果继续调用构造函数,count会递增,程序关闭之后count被销毁,再次运行count重新被定义并初始化为0
更多追问追答
追问
我记得静态的只会被调用一次,这个被调用了多次?
追答
是只会被初始化一次
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询