Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでのパラメーター化されたコンストラクターの使用は何ですか?


コンストラクターはメソッドに似ており、クラスのオブジェクトを作成するときに呼び出されます。通常、コンストラクターはクラスのインスタンス変数を初期化するために使用されます。コンストラクターはクラスと同じ名前であり、戻り型はありません。

パラメーター化されたコンストラクターと引数なしのコンストラクターには、パラメーター化されたコンストラクターがパラメーターを受け入れる2つのタイプがあります。

コンストラクターの主な目的は、クラスのインスタンス変数を初期化することです。パラメータ化されたコンストラクタを使用すると、インスタンス化時に指定された値でインスタンス変数を動的に初期化できます。

public class Sample{
   Int i;
   public sample(int i){
      this.i = i;
   }
}

次の例では、Studentクラスに2つのプライベート変数ageとnameがあります。 mainメソッドから、パラメーター化されたコンストラクターを使用してクラス変数をインスタンス化します-

import java.util.Scanner;
public class StudentData {
   private String name;
   private int age;
   //parameterized constructor
   public StudentData(String name, int age){
      this.name =name;
      this.age = age;
   }  
   public void display(){
      System.out.println("Name of the Student: "+this.name );
      System.out.println("Age of the Student: "+this.age );
   }
   public static void main(String args[]) {
      //Reading values from user
      Scanner sc = new Scanner(System.in);      
      System.out.println("Enter the name of the student: ");
      String name = sc.nextLine();
     
      System.out.println("Enter the age of the student: ");
      int age = sc.nextInt();      
      System.out.println(" ");
     
      //Calling the parameterized constructor
      new StudentData(name, age).display();
   }
}

出力

Enter the name of the student:
Sundar
Enter the age of the student:
20

Name of the Student: Sundar
Age of the Student: 20

  1. JavaでのsetBounds()メソッドの使用は何ですか?

    レイアウト マネージャー 追加されたコンポーネントの位置とサイズを自動的に決定するために使用されます。レイアウトマネージャーがない場合は、コンポーネントの位置とサイズを手動で設定する必要があります。 setBounds() このような状況では、メソッドを使用して位置とサイズを設定します。コンポーネントの位置とサイズを手動で指定するには、フレームのレイアウトマネージャーを nullにすることができます。 。 setBounds() setBounds() メソッドには4つの引数が必要です。最初の2つの引数は、x座標とy座標です。 左上の コーナー コンポーネントの3番目の引数は幅です コ

  2. コンストラクター名がJavaのクラス名と同じなのはなぜですか?

    すべてのクラスオブジェクトは同じ新しいキーワードを使用して作成されるため、オブジェクトを作成する必要のあるクラスに関する情報が含まれている必要があります。このため、コンストラクター名はクラス名と同じにする必要があります。 例 class MyConstructor{    public MyConstructor() {       System.out.println("The constructor name should be same as the class name");    }