コンストラクタ8.4

コンストラクタは、我々はキーワードnewでオブジェクトを作成するとき、実際には、コンストラクタメソッドを呼び出して、オブジェクトの名前を作成するために設計されています。

フォーマット:

 パブリッククラス名(パラメータタイプパラメータ名){

    メソッド本体  

  }

注意事項:

1.コンストラクタの名前は、クラスの名前とまったく同じでなければならない、とさえケースは同じである必要があります。

2.コンストラクタ戻り値の型ではなく、さらに、ボイドの書き込みを書いてはいけません。

3.工事の方法は、特定の戻り値を返しません。

あなたが任意のコンストラクタを記述しない場合は4、コンパイラはデフォルトコンストラクタを提示し、パラメータなしで、メソッド本体には何もしません。

5.あなたは、少なくともコンストラクタを書いたら、コンパイラはもはや提示しません。

前記構成の方法もオーバーロードすることができます。

 

 

コード例:

クラス学生{パブリック
    パブリック学生(){ 

        System.out.printlnは( "それを行う工法!"); 
    } 
}

  

パブリッククラスDemo02Student { 
    パブリック静的無効メイン(文字列[] args){ 
        学生STU =新しい学生()。
        
    } 
}


結果:

 

メソッドのオーバーロードの設定例:

クラスの学生{パブリック
    プライベート文字列名; 
    プライベートint型の年齢、
    公共学生(){ 

        System.out.printlnは(「引数なしのコンストラクタはそれを実行!」); 
    } 
    公共の学生(文字列名、int型の年齢)
    { 
        System.out.printlnは( "それを実行するのフル引数のコンストラクタメソッド!"); 
        this.name =名; 
        this.age =年齢; 
    } 
    パブリック無効のsetName(文字列名)
    { 
        this.name =名; 
    } 
    パブリック文字列のgetName()
    { 
        ;名を返します
    } 
    setAge公開(年齢INT)無効
    { 
        ; this.age =年齢
    } 
    パブリックINT getAgeを()
    {
        年齢を返します。
    } 
}

  

{クラスDemo02Student公共
    のpublic static無効メイン(文字列[] args){ 
        学生学生新しい新しいSTU =(); 
        のSystem.out.println(「==================== ============= "); 
        学生STU2 =新新学生("趙麗穎"20); 
        System.out.printlnは("私は: "+ stu2.getName()+"私の年齢は:「+ stu2.getAge()); 
        あなたがオブジェクト間のメンバ変数データの内容を変更する必要がある場合は、//、まだsetXXXメソッドを使用する必要があります
        stu2.setAge(21); 
        System.out.printlnは(」年齢が変更されました:「+ stu2.getAge()); 
    } 
}

  

 

おすすめ

転載: www.cnblogs.com/sdrbg/p/11119788.html