Javaでは、デフォルトのコンストラクタとパラメータ付きコンストラクタの違いは何ですか?

WBOY
リリース: 2023-09-22 12:37:02
転載
779 人が閲覧しました

Javaでは、デフォルトのコンストラクタとパラメータ付きコンストラクタの違いは何ですか?

デフォルト コンストラクター

  • デフォルト コンストラクターは、スーパークラス コンストラクターへの参照を含む 0 引数のコンストラクター です。パラメータなしの呼び出し。
  • 新しく作成されたオブジェクトにデフォルト値を割り当てるのは、デフォルト コンストラクターの主な役割です。
  • プログラムがコンストラクターを記述しない場合にのみ、コンパイラーはコード内にデフォルトのコンストラクターを記述します。
  • デフォルト コンストラクターのアクセス修飾子は常にクラス修飾子と同じですが、このルールは "public" および "default"
  • # にのみ適用されます。
##コンパイラがデフォルト コンストラクタを追加する場合

    プログラマがコンストラクタを記述せずにコードにデフォルト コンストラクタを追加した場合にのみ、コンパイラはコードにデフォルト コンストラクタを追加します。
  • プログラマがコード内にコンストラクタを記述した場合、コンパイラはコンストラクタを追加しません。
  • すべてのデフォルト コンストラクターは引数 0 のコンストラクターですが、引数 0 のすべてのコンストラクターはデフォルト コンストラクターではありません。
パラメータ化されたコンストラクター

    パラメータ化されたコンストラクターは、渡される
  • 特定の数のパラメーターを持つコンストラクターです。
  • パラメータ化されたコンストラクターの目的は、ユーザーがさまざまなオブジェクトのインスタンス変数に必要な特定の値を割り当てることです。
  • パラメータ化されたコンストラクターは、プログラマによって明示的に作成されます。
  • デフォルト コンストラクターのアクセス修飾子は常にクラス修飾子と同じですが、このルールは
  • "public" および "default" 修飾子にのみ適用されます。

リアルタイム デモンストレーション

public class Student {
   int roll_no;
   String stu_name;
   Student(int i, String n) { // Parameterized constructor
      roll_no = i;
      stu_name = n;
   }
   void display() {
      System.out.println(roll_no+" "+stu_name);
   }
   public static void main(String args[]) {
      Student s1 = new Student(1,"Adithya");
      Student s2 = new Student(2,"Jai");
      s1.display();
      s2.display();
   }
}
ログイン後にコピー

上記のプログラムでは、プログラマは 2 つのパラメーターを持つパラメーター化されたコンストラクターを定義します。現在、コンパイラーはコードにデフォルトのコンストラクターを追加せず、プログラマーは引数 0 のコンストラクターを作成しません。

出力

1 Adithya
2 Jai
ログイン後にコピー

以上がJavaでは、デフォルトのコンストラクタとパラメータ付きコンストラクタの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!