慕码人2851768
2018-11-24 22:56
package zuoshiyan;
public class HelloWorld1 {
int sum1;
int sum2;
static int sum3;
public void a() {
sum1=12;
System.out.println("diyici");
}
{
sum2=13;
}
{
sum3=14;
}
public static void main(String[] args) {
HelloWorld1 hello=new HelloWorld1();
System.out.println(hello.sum1);
System.out.println(hello.sum2);
System.out.println(sum3);
HelloWorld1 hello2=new HelloWorld1();
HelloWorld1 hello3=new HelloWorld1();
}
}
/*此操作运行结果为:
* 0
* 13
* 14
*请问,为什么不对sum1赋值
*难道就必须要用构造方法才行么
*/
你对sum1的赋值时放在一个方法里的,创建hello对象后没有使用这个方法,所以sum1的值是系统默认的int型的值,就是0了
sum1=12的作用范围好像只有在a()这个方法中,而你的main里面没有用到a()这个方法,所以等于没有对这个sum1赋值,所以还是默认0
Java入门第二季 升级版
530553 学习 · 6091 问题
相似问题