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

關(guān)于java中構(gòu)造函數(shù)的一些知識(shí)詳解

 更新時(shí)間:2016年12月10日 10:07:53   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇關(guān)于java中構(gòu)造函數(shù)的一些知識(shí)詳解。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

java的構(gòu)造函數(shù)是一個(gè)非常重要的作用,首先java里的構(gòu)造函數(shù)是可以重載的,而且因?yàn)橐彩强梢岳^承在父類(lèi)的構(gòu)造函數(shù),所以在子類(lèi)里,首先必然是調(diào)用父類(lèi)的構(gòu)造函數(shù)??梢钥聪旅娴膬蓚€(gè)例子來(lái)對(duì)比:

public class Test
{
  public static void main(String args[])
  {
    B b = new B(100);
  }
}

class A
{
  public A()
  {
    System.out.println("A without any parameter");
  }
  public A(int i)
  {
    System.out.println("A with a parameter");
  }
}

class B extends A
{
  public B()
  {
    System.out.println("B without any parameter");
  }
  public B(int i)
  {
    System.out.println("B with a parameter");
  }
}

這個(gè)例子最后輸出的是

A without any parameter

B with a parameter

可以看到首先調(diào)用的是父類(lèi)的構(gòu)造函數(shù),然后再是調(diào)用自己的構(gòu)造函數(shù)。但是因?yàn)檫@里的B類(lèi)中的有參數(shù)的構(gòu)造函數(shù)是沒(méi)有super父類(lèi),所以導(dǎo)致它只會(huì)執(zhí)行父類(lèi)的沒(méi)有參數(shù)的構(gòu)造函數(shù)。如果要讓它執(zhí)行有參數(shù)的父類(lèi)的構(gòu)造函數(shù),那么就要這樣寫(xiě)代碼:

public class Test
{
  public static void main(String args[])
  {
    B b = new B(100);
  }
}

class A
{
  public A()
  {
    System.out.println("A without any parameter");
  }
  public A(int i)
  {
    System.out.println("A with a parameter");
  }
}

class B extends A
{
  public B()
  {
    System.out.println("B without any parameter");
  }
  public B(int i)
  {
    super(i);        //這里就是繼承自父類(lèi)的有參數(shù)的構(gòu)造函數(shù)
    System.out.println("B with a parameter");
  }
}

所以最后輸出的是:

A with a parameter

B with a parameter

因此,派生類(lèi)必須通過(guò)super來(lái)調(diào)用父類(lèi)的含有參數(shù)的構(gòu)造函數(shù)。以下再附一道題:

public class Test extends X
{
  Y y = new Y();
  Test()
  {
    System.out.print("Z");
  }
  public static void main(String args[])
  {
    new Test();
  }
}

class X
{
  Y b = new Y();
  X()
  {
    System.out.print("X");
  }
}

class Y
{
  Y()
  {
    System.out.print("Y");
  }
}

輸出的結(jié)果是什么?

首先我們來(lái)分析這道題:

因?yàn)槭紫瓤催@個(gè)main函數(shù),這個(gè)main函數(shù)只有一句代碼: new Test();因?yàn)榘l(fā)現(xiàn)這個(gè)Test類(lèi)是繼承自X,所以首先要構(gòu)造X,那么就進(jìn)行X類(lèi)的運(yùn)行 Y b = new Y(),然后我們可以看到輸出的Y,然后就是執(zhí)行X類(lèi)的構(gòu)造函數(shù),輸出X;接著就是構(gòu)造Y,然后執(zhí)行Test自己的構(gòu)造函數(shù),輸出Z,所以輸出結(jié)果是YXYZ。

以上這篇關(guān)于java中構(gòu)造函數(shù)的一些知識(shí)詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringSecurity安全框架在SpringBoot框架中的使用詳解

    SpringSecurity安全框架在SpringBoot框架中的使用詳解

    在Spring?Boot框架中,Spring?Security是一個(gè)非常重要的組件,它可以幫助我們實(shí)現(xiàn)應(yīng)用程序的安全性,本文將詳細(xì)介紹Spring?Security在Spring?Boot框架中的使用,包括如何配置Spring?Security、如何實(shí)現(xiàn)身份驗(yàn)證和授權(quán)、如何防止攻擊等
    2023-06-06
  • java文件對(duì)話框過(guò)濾特定文件類(lèi)型示例

    java文件對(duì)話框過(guò)濾特定文件類(lèi)型示例

    文件作為存儲(chǔ)數(shù)據(jù)的單元,會(huì)根據(jù)數(shù)據(jù)類(lèi)型產(chǎn)生很多分類(lèi),也就是所謂的文件類(lèi)型。在對(duì)數(shù)據(jù)文件進(jìn)行操作時(shí),常常需要根據(jù)不同的文件類(lèi)型來(lái)作不同的處理。本實(shí)例實(shí)現(xiàn)的是讀取文件夾指定類(lèi)型的文件并顯示到表格控件中
    2014-02-02
  • Spring?Boot中使用Swagger3.0.0版本構(gòu)建RESTful?APIs的方法

    Spring?Boot中使用Swagger3.0.0版本構(gòu)建RESTful?APIs的方法

    Swagger?是一個(gè)規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化?RESTful?風(fēng)格的?Web?服務(wù),這篇文章主要介紹了Spring?Boot中使用Swagger3.0.0版本構(gòu)建RESTful?APIs的方法,需要的朋友可以參考下
    2022-11-11
  • SpringBoot利用限速器RateLimiter實(shí)現(xiàn)單機(jī)限流的示例代碼

    SpringBoot利用限速器RateLimiter實(shí)現(xiàn)單機(jī)限流的示例代碼

    本文主要介紹了SpringBoot利用限速器RateLimiter實(shí)現(xiàn)單機(jī)限流的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 談?wù)凧ava中自定義注解及使用場(chǎng)景

    談?wù)凧ava中自定義注解及使用場(chǎng)景

    這篇文章主要介紹了談?wù)凧ava中自定義注解及使用場(chǎng)景,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Java用文件流下載網(wǎng)絡(luò)文件示例代碼

    Java用文件流下載網(wǎng)絡(luò)文件示例代碼

    這篇文章主要介紹了Java用文件流的方式下載網(wǎng)絡(luò)文件,大家參考使用吧
    2013-11-11
  • 解決swagger2.9.2接口文檔顯示的問(wèn)題

    解決swagger2.9.2接口文檔顯示的問(wèn)題

    這篇文章主要介紹了解決swagger2.9.2接口文檔顯示的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • java 中序列化與readResolve()方法的實(shí)例詳解

    java 中序列化與readResolve()方法的實(shí)例詳解

    這篇文章主要介紹了java 中序列化與readResolve()方法的實(shí)例詳解的相關(guān)資料,這里提供實(shí)例幫助大家理解這部分知識(shí),需要的朋友可以參考下
    2017-08-08
  • 【spring-boot】快速構(gòu)建spring-boot微框架的方法

    【spring-boot】快速構(gòu)建spring-boot微框架的方法

    本篇文章主要介紹了【spring-boot】快速構(gòu)建spring-boot微框架的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12
  • Java數(shù)據(jù)類(lèi)型的規(guī)則

    Java數(shù)據(jù)類(lèi)型的規(guī)則

    這篇文章主要介紹了Java數(shù)據(jù)類(lèi)型的規(guī)則的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12

最新評(píng)論