类的加载顺序和静态代码块和匿名代码块的区别
生活随笔
收集整理的這篇文章主要介紹了
类的加载顺序和静态代码块和匿名代码块的区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
靜態(tài)代碼塊和匿名代碼塊的區(qū)別
靜態(tài)塊: static { }
匿名塊:?{ }?
????????靜態(tài)塊只在類第一次被加載的時候執(zhí)行一次,一般用于進行初始化工作;
????????匿名塊在每一次創(chuàng)建本類對象或者子類對象時都會被調用一次 ; 對于父類,每創(chuàng)建一個父類對象都會調用一次父類匿名塊;對于子類,每創(chuàng)建一個子類對象都先調用父類匿名塊,再調用子類的匿名塊。
????????在一個類中可以有多個靜態(tài)塊和匿名塊,在類加載的時候靜態(tài)塊是按照先后順序執(zhí)行的,在創(chuàng)建對象的時候匿名塊也是按照先后順序執(zhí)行的。
?
類的加載順序
規(guī)則:
順序:
父類的靜態(tài)字段——>父類靜態(tài)代碼塊——>子類靜態(tài)字段——>子類靜態(tài)代碼塊——>
父類成員變量(非靜態(tài)字段)——>父類非靜態(tài)代碼塊——>父類構造器——>
子類成員變量——>子類非靜態(tài)代碼塊——>子類構造器
總結
以上是生活随笔為你收集整理的类的加载顺序和静态代码块和匿名代码块的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 火车票手续费怎么扣的
- 下一篇: 什么叫保本理财产品 这几种用户都可以选