欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java對(duì)象初始化順序驗(yàn)證示例

 更新時(shí)間:2014年02月07日 11:19:55   作者:  
以下這段小程序?qū)φ{(diào)用對(duì)象構(gòu)造函數(shù)時(shí),父類構(gòu)造函數(shù)、成員變量初始化函數(shù),以及非靜態(tài)初始化塊調(diào)用順序進(jìn)行驗(yàn)證,不考慮靜態(tài)成員及靜態(tài)初始化塊

復(fù)制代碼 代碼如下:

public class Derive extends Base
{
    private Member m1 = new Member("Member 1");
    {
        System.out.println("Initial Block()");
    }

    public Derive() {
        System.out.println("Derive()");
    }

    private Member m2 = new Member("Member 2");
    private int i = getInt();

    private int getInt()
    {
        System.out.println("getInt()");
        return 2;
    }

    public static void main(String[] args)
    {
        new Derive();
    }
}

class Base
{
    public Base()
    {
        System.out.println("Base()");
    }
}

class Member
{
    public Member(String m)
    {
        System.out.println("Member() "+m);
    }
}
/*程序輸出:
Base()
Member()  Member 1
Initial Block()
Member()  Member 2
getInt()
Derive()
*/



得出結(jié)論如下:不考慮靜態(tài)成員的初始化,調(diào)用一個(gè)對(duì)象的構(gòu)造函數(shù)時(shí),程序先調(diào)用父類的構(gòu)造函數(shù)(可以通過super關(guān)鍵字指定父類的構(gòu)造函數(shù),否則默認(rèn)調(diào)用無參的構(gòu)造函數(shù),并且需要在子類的構(gòu)造函數(shù)的第一行調(diào)用),之后靜態(tài)成員變量的初始化函數(shù)和靜態(tài)初始化塊則按照在代碼當(dāng)中的順序執(zhí)行,成員變量如果沒有指定值的話則賦予默認(rèn)值,即基本數(shù)據(jù)類型為0或false等,對(duì)象則為null;最后調(diào)用自身構(gòu)造函數(shù)。

相關(guān)文章

  • Spring集成Druid連接池及監(jiān)控配置的全過程

    Spring集成Druid連接池及監(jiān)控配置的全過程

    java程序很大一部分要操作數(shù)據(jù)庫,為了提高性能操作數(shù)據(jù)庫的時(shí)候,有不得不使用數(shù)據(jù)庫連接池,下面這篇文章主要給大家介紹了關(guān)于Spring集成Druid連接池及監(jiān)控配置的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 使用Java 實(shí)現(xiàn)一個(gè)“你畫手機(jī)猜”的小游戲

    使用Java 實(shí)現(xiàn)一個(gè)“你畫手機(jī)猜”的小游戲

    這篇文章主要介紹了使用Java 實(shí)現(xiàn)一個(gè)“你畫手機(jī)猜”的小游戲,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java編程實(shí)現(xiàn)游戲中的簡單碰撞檢測(cè)功能示例

    Java編程實(shí)現(xiàn)游戲中的簡單碰撞檢測(cè)功能示例

    這篇文章主要介紹了Java編程中的簡單碰撞檢測(cè)功能,涉及java針對(duì)坐標(biāo)點(diǎn)的相關(guān)數(shù)學(xué)運(yùn)算操作技巧,需要的朋友可以參考下
    2017-10-10
  • Spring中的@Conditional注解實(shí)現(xiàn)分析

    Spring中的@Conditional注解實(shí)現(xiàn)分析

    這篇文章主要介紹了Spring中的@Conditional注解實(shí)現(xiàn)分析,  @Conditional是Spring 4出現(xiàn)的注解,但是真正露出價(jià)值的是Spring Boot的擴(kuò)展@ConditionalOnBean等,需要的朋友可以參考下
    2023-12-12
  • Java通俗易懂系列設(shè)計(jì)模式之裝飾模式

    Java通俗易懂系列設(shè)計(jì)模式之裝飾模式

    這篇文章主要介紹了Java通俗易懂系列設(shè)計(jì)模式之裝飾模式,對(duì)設(shè)計(jì)模式感興趣的同學(xué),一定要看一下
    2021-04-04
  • 基于Spring Boot不同的環(huán)境使用不同的配置方法

    基于Spring Boot不同的環(huán)境使用不同的配置方法

    下面小編就為大家分享一篇基于Spring Boot不同的環(huán)境使用不同的配置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 如何將默認(rèn)的maven倉庫改為阿里的maven倉庫

    如何將默認(rèn)的maven倉庫改為阿里的maven倉庫

    這篇文章主要介紹了如何將默認(rèn)的maven倉庫改為阿里的maven倉庫,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Springboot?hibernate-validator?6.x快速校驗(yàn)示例代碼

    Springboot?hibernate-validator?6.x快速校驗(yàn)示例代碼

    這篇文章主要介紹了Springboot?hibernate-validator?6.x校驗(yàn),本文以6.2.1.Final版本為例解決了log4j版本的漏洞問題,通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-12-12
  • 簡單講解java中throws與throw的區(qū)別

    簡單講解java中throws與throw的區(qū)別

    這篇文章主要介紹了簡單講解java中throws與throw的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Java并發(fā)編程之CountDownLatch解讀

    Java并發(fā)編程之CountDownLatch解讀

    這篇文章主要介紹了Java并發(fā)編程之CountDownLatch解讀,是通過一個(gè)計(jì)數(shù)器來實(shí)現(xiàn)的,計(jì)數(shù)器的初始值是線程的數(shù)量,countDownLatch這個(gè)類使一個(gè)線程等待其他線程各自執(zhí)行完畢后再執(zhí)行,需要的朋友可以參考下
    2023-12-12

最新評(píng)論