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

需要帮忙讲解~

在本课课件里,main方法只调用了两次构造方法,其他三行是输出语句。从哪里运行的初始化块代码和静态初始化块代码呢?
还有,为什么静态初始化块代码只加载一次呢?
谢谢。


正在回答

3 回答

我也是初学者,以下是我的看法。

在main中创建对象的时候,就调用了构造方法,第一季的时候我们创建对象的时候用的是系统的默认的空的构造方法,本课件的例子中用的是我们自己写的构造方法。

我们在构造方法中初始化了num1,num2,num3这三个变量,其中num3是用静态的初始化的。为了说明静态初始化的块是是否被执行,及块的执行顺序,给每个初始化块中加入了输出的语句。

在创造hello这个对象的时候,同时第一次调用构造方法,通过输出的语句顺序发现num3这个静态初始化块是最先被执行的。

然后接下来三条语句分别输出了num1,2,3的值。

接着创造了hello2这个对象,第二次调用构造方法,通过输出的语句发现只执行了num1,num2这两个初始块,说明静态初始化块只执行一次。

0 回复 有任何疑惑可以回复我~

楼主还是贴代码直接点

0 回复 有任何疑惑可以回复我~
#1

_Jack_Han_ 提问者

请点击上面“源自:java入门第二季1-10”链接,谢谢。
2016-01-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530631    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

需要帮忙讲解~

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信