为了账号安全,请及时绑定邮箱和手机立即绑定

小白求大神解答 谢谢

小白求大神解答 谢谢

慕数据3565510 2017-05-10 00:25:55
package com.imooc;public class Demo1 { int num1; int num2; static int num3; public Demo1(){ num1=91; System.out.println("通过构造方法为变量num1赋值"); } { num2=74; System.out.println("通过初始化块为变量num2赋值"); } static{ num3=83; System.out.println("通过静态初始化块为静态变量num3赋值"); } public static void main(String[] args) { Demo1 hello=new Demo1(); System.out.println(hello.num1); System.out.println(hello.num2); System.out.println(hello.num3); Demo1 hello2=new Demo1(); } }在这段代码中为什么创建对象时没有执行num 1;num 2;num 3;呢?在System.out.println(hello.num3);中为什么可以用num3\hello.num3\Demo.num3?
查看完整描述

3 回答

已采纳
?
cyc川

TA贡献17条经验 获得超11个赞

有执行啊,输出也有。构造函数在程序运行之处就会运行。运行顺序不太懂。

第二个问题就简单了,自己百度一下static这个关键字就可以了。

查看完整回答
反对 回复 2017-05-12
?
慕数据3565510

TA贡献2条经验 获得超0个赞

第一个问题知道了,钻牛角尖了,已经执行了num 1=91等,只是没有输出

查看完整回答
反对 回复 2017-05-10
  • 3 回答
  • 0 关注
  • 1416 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信