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

Jake Whartoon大神Twitter上发的一个问题,求大神解释

Jake Whartoon大神Twitter上发的一个问题,求大神解释

DIEA 2019-03-13 18:15:35
后续:测试类两个测试类如下class TestMethodA {    static String name = "akioss";}class TestMethodB {    static final String name = "akioss";}查看字节码通过javap指令查看两个类的字节码classAclass com.akioss.TestMethodA {  static java.lang.String name;  com.akioss.TestMethodA();    Code:       0: aload_0              1: invokespecial #1                  // Method java/lang/Object."<init>":()V       4: return          static {};    Code:       0: ldc           #2                  // String akioss       2: putstatic     #3                  // Field name:Ljava/lang/String;       5: return        }可以看到除了默认的构造方法之外,还有一个静态代码块,执行了putstatic指令classBclass com.akioss.TestMethodB {  static final java.lang.String name;  com.akioss.TestMethodB();    Code:       0: aload_0              1: invokespecial #1                  // Method java/lang/Object."<init>":()V       4: return        }
查看完整描述

2 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

构造器+Object方法数?
不明白A、B在方法数上有什么区别
我觉得区别只在A有静态初始化块而B没有

查看完整回答
反对 回复 2019-04-16
?
MM们

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

2,1

LZ可以参考上面的解释WHY


查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 520 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号