最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java構(gòu)造方法的互相調(diào)用方式

 更新時(shí)間:2024年03月27日 10:29:10   作者:一顆菘菜  
這篇文章主要介紹了java構(gòu)造方法的互相調(diào)用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

java構(gòu)造方法的互相調(diào)用

public Student(int age){
    super();
    this.age = age;
}
 
public Student(String name , int age){
    /*
        super(); 注意,這里不能再調(diào)用super();因?yàn)橄逻叺膖his(age);調(diào)用了上方的構(gòu)造器,已經(jīng)存在了    
        super();該構(gòu)造器內(nèi)不能再次調(diào)用。所以只寫一個(gè)this(age)就夠了;
    */
    this(age);
    this.name = name;
}

其他的小細(xì)節(jié)

構(gòu)造方法體內(nèi)調(diào)用父類構(gòu)造器( super(); )或重載構(gòu)造器( this(); )時(shí),應(yīng)放在方法體內(nèi)的第一行。

構(gòu)造方法及其重載

1.構(gòu)造方法

類中有一種特殊的成員方法,其方法名與類名相同,稱為構(gòu)造方法。

通過構(gòu)造方法可以完成對象的創(chuàng)建,以及實(shí)例變量的初始化。

下面是一個(gè)構(gòu)造方法示例:

public class Puppy{
  public Puppy( ) { }
  public Puppy(String name) {

       //這個(gè)構(gòu)造器僅有一個(gè)name

      }
}  

每個(gè)類都有一個(gè)隱藏的無參構(gòu)造函數(shù)。

public class Dog{
 
    /**
     * 帶參構(gòu)造函數(shù)
     * @param name
     * @param age
     */
    public Dog(String name,int age){
        this.age = age;
        this.name = name;
    }
 
    /**
     * 無慘構(gòu)造函數(shù)
     */
    public Dog(){}
 
    String name;
    int age;
 
    public void ptint(){
        System.out.println("name = "+this.name+";age = "+age);
    }
 
    public static void main(String[] args) {
        new Dog().ptint();
        new Dog("花花",9).ptint();
    }
}

2.構(gòu)造方法和對象的初始化

構(gòu)造方法怎么調(diào)用,使用哪個(gè)運(yùn)算符?

當(dāng)使用new 運(yùn)算符實(shí)例化一個(gè)對象時(shí),系統(tǒng)為對象創(chuàng)建內(nèi)存區(qū)域并自動調(diào)用構(gòu)造方法初始化成員變量。

下面是new運(yùn)算符實(shí)例化一個(gè)對象。

Puppy p = new Puppy( );
Puppy p1 = new Puppy(“張三”);

3.實(shí)例——用構(gòu)造方法初始化成員變量

class Triangle
{
int x,y,z;
public Triangle(int i,int j,int k)
{  
x=i;y=j;z=k;
public static bpplean judge(Triangle m)
{ 
 if(Math.sqrt(m.x*m.x+m.y*m.y)= =Math.sqrt(m.z*m.z))
    //引用Math類庫的sqrt()方法
    return true;
    else
    return false;
}
public static void main(String args[]) {
Triangle t1=new Triangle(3,4,5);
if(judge(t1))   //調(diào)用judge()方法,判斷t1的成員變量是
    //否能構(gòu)成直角三角形的3條邊長
System.out.println("這是一個(gè)直角三角形");
else
System.out.Println("這不是一個(gè)直角三角形");
}
 
}

4.構(gòu)造方法的特點(diǎn)

  • 構(gòu)造方法名與類名必須一致,大小寫也要一樣。
  • 構(gòu)造方法沒有返回值,void類型也不寫。
  • 在創(chuàng)建一個(gè)對象的時(shí)候,至少要調(diào)用一個(gè)構(gòu)造方法。
  • 構(gòu)造方法不能顯式地直接調(diào)用。
  • 構(gòu)造方法的主要作用是對對象初始化。
  • 修飾符列表目前統(tǒng)一寫:public。千萬不要寫public static。

5.構(gòu)造方法重載 

構(gòu)造方法是支持方法重載的。在一個(gè)類當(dāng)中構(gòu)造方法可以有多個(gè)。并且所有的構(gòu)造方法名字都是一樣的。

對于實(shí)例變量來說,只要你在構(gòu)造方法中沒有手動給它賦值,統(tǒng)一都會默認(rèn)賦值。默認(rèn)賦系統(tǒng)值。

方法重載特點(diǎn):

  • 重載的方法必須在同一個(gè)類中
  • 方法名相同
  • 參數(shù)列表不同(不包含參數(shù)名不同)
  • 方法的重載與訪問修飾符和返回值類型無關(guān)

6.成員變量

類中的屬性,也就是直接在類中定義的變量稱作成員變量,它定義在方法外面。

局部變量就是定義在方法中的變量;一般情況下,局部變量在使用前需要賦值,否則會編譯出錯(cuò)。

成員變量和局部變量的區(qū)別:

  • 作用域不同。局部變量的作用域僅限于定義它的方法,在該方法外無法訪問它;成員變量的作用域在整個(gè)類內(nèi)部都是可見的,所有成員方法都可以使用它,如果訪問權(quán)限允許,還可以在類外部使用成員變量。
  • 初始值不同。成員變量在定義時(shí)可以不初始化,Java會給成員變量賦初始值;但是Java不會給局部變量賦初始值,因此在定義局部變量時(shí)必須初始化后再使用。
  • 在同一個(gè)方法中,不允許有同名的局部變量,在不同的方法中可以有同名的局部變量。
  • 局部變量可以和成員變量同名,并且在使用時(shí),局部變量具有更高的優(yōu)先級。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring?Boot?+?MySQL讀寫分離實(shí)現(xiàn)方案全過程

    Spring?Boot?+?MySQL讀寫分離實(shí)現(xiàn)方案全過程

    讀寫分離是數(shù)據(jù)庫架構(gòu)中的一種優(yōu)化策略,它將讀操作和寫操作分開處理,通常通過將讀請求和寫請求分別發(fā)送到不同的數(shù)據(jù)庫服務(wù)器來實(shí)現(xiàn),這篇文章主要介紹了Spring?Boot?+?MySQL讀寫分離實(shí)現(xiàn)方案的相關(guān)資料,需要的朋友可以參考下
    2025-12-12
  • springboot整合xxl-job的示例代碼

    springboot整合xxl-job的示例代碼

    這篇文章主要介紹了springboot整合xxl-job的示例代碼,主要分為三大模塊,分別是調(diào)度中心、執(zhí)行器和配置定時(shí)任務(wù)的過程,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • SpringBoot線程池配置使用示例詳解

    SpringBoot線程池配置使用示例詳解

    Spring?Boot集成@Async注解,支持線程池參數(shù)配置(核心數(shù)、隊(duì)列容量、拒絕策略等)及生命周期管理,結(jié)合監(jiān)控與任務(wù)裝飾器,提升異步處理效率與系統(tǒng)穩(wěn)定性,本文給大家介紹SpringBoot線程池配置使用示例詳解,感興趣的朋友一起看看吧
    2025-07-07
  • Java中Map遍歷的九種方式匯總

    Java中Map遍歷的九種方式匯總

    這篇文章主要介紹了Java中九種?Map?的遍歷方式匯總的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Spring?Boot?Admin?添加報(bào)警提醒和登錄驗(yàn)證功能的具體實(shí)現(xiàn)

    Spring?Boot?Admin?添加報(bào)警提醒和登錄驗(yàn)證功能的具體實(shí)現(xiàn)

    報(bào)警提醒功能是基于郵箱實(shí)現(xiàn)的,當(dāng)然也可以使用其他的提醒功能,如釘釘或飛書機(jī)器人提醒也是可以的,但郵箱報(bào)警功能的實(shí)現(xiàn)成本最低,所以本文我們就來看郵箱的報(bào)警提醒功能的具體實(shí)現(xiàn)
    2022-01-01
  • SpringBoot無法解析parameter參數(shù)問題的解決方法

    SpringBoot無法解析parameter參數(shù)問題的解決方法

    使用最新版的 Springboot 3.2.1(我使用3.2.0)搭建開發(fā)環(huán)境進(jìn)行開發(fā),調(diào)用接口時(shí)出現(xiàn)奇怪的錯(cuò),本文小編給大家介紹了SpringBoot無法解析parameter參數(shù)問題的原因及解決方法,需要的朋友可以參考下
    2024-04-04
  • Springboot訪問templates html頁面過程詳解

    Springboot訪問templates html頁面過程詳解

    這篇文章主要介紹了Springboot訪問templates html頁面過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • SpringCloud降級規(guī)則使用介紹

    SpringCloud降級規(guī)則使用介紹

    這篇文章主要介紹了SpringCloud降級規(guī)則,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Java中DateTimeFormatter的使用方法和案例

    Java中DateTimeFormatter的使用方法和案例

    在Java中,DateTimeFormatter類用于格式化和解析日期時(shí)間對象,它是日期時(shí)間格式化的強(qiáng)大而靈活的工具,本文將和大家一起探討Java中DateTimeFormatter的使用方法和案例,需要的朋友可以參考下
    2023-10-10
  • springboot application.properties 文件注入數(shù)組方式

    springboot application.properties 文件注入數(shù)組方式

    這篇文章主要介紹了springboot application.properties 文件注入數(shù)組方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評論

乌恰县| 辽源市| 南雄市| 井冈山市| 临漳县| 霸州市| 瓦房店市| 齐齐哈尔市| 岳阳市| 马尔康县| 明溪县| 塘沽区| 泗洪县| 桂东县| 边坝县| 麦盖提县| 大足县| 吴江市| 宿松县| 舟山市| 中超| 昌平区| 黑水县| 绿春县| 贺州市| 称多县| 池州市| 元朗区| 朝阳市| 板桥市| 松桃| 巨野县| 吉林省| 钦州市| 枣强县| 兰考县| 石泉县| 久治县| 杭锦旗| 南乐县| 兰西县|