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

あるコンストラクターを別のコンストラクターから呼び出すJavaプログラム


この記事では、あるコンストラクターを別のコンストラクターから呼び出す方法を理解します。キーワード「this()」は、コンストラクターを呼び出すために使用されます。

以下は同じもののデモンストレーションです。 this()-

を使用しながら、2つの数値の合計と積を表示します。

入力

入力が-

であると仮定します
The numbers are defined as 12 and 30

出力

必要な出力は-

になります
The sum is: 42
The product is: 360

アルゴリズム

Step 1 - START
Step 2 - Declare an integer value namely my_sum
Step 3 - In the main class, we define a ‘this’ reference to the numbers which would be used as input.
Step 4 - This will call the ‘this’ constructor that invokes the current class constructor.
Step 5 - Another ‘display’ function is used to display the sum.
Step 6 - An object of the class is created, and the functions are invoked to display the result

例1

ここでは、2つの数値の合計が計算されています。

public class Main {
   int my_sum;
   Main() {
      this(12, 30);
   }
   Main(int my_input_1, int my_input_2) {
      System.out.println("The numbers are defined as " +my_input_1 +" and " +my_input_2);
      this.my_sum = my_input_1 + my_input_2;
   }
   void display() {
      System.out.println("The sum is: " + my_sum);
   }
   public static void main(String[] args) {
      Main my_object = new Main();
      my_object.display();
   }
}

出力

The numbers are defined as 12 and 30
The sum is: 42

例2

ここでは、2つの数値の積が計算されています。

public class Main {
   int my_product;
   Main() {
      this(12, 30);
   }
   Main(int my_input_1, int my_input_2) {
      System.out.println("The numbers are defined as " +my_input_1 +" and " +my_input_2);
      this.my_product = my_input_1 * my_input_2;
   }
   void display() {
      System.out.println("The product of the two values is: " + my_product);
   }
   public static void main(String[] args) {
      Main my_object = new Main();
      my_object.display();
   }
}

出力

The numbers are defined as 12 and 30
The product of the two values is: 360

  1. mainメソッドなしでJavaプログラムを実行できますか?

    はい、静的ブロックを使用することで、mainメソッドなしでJavaプログラムを実行できます。 Javaの静的ブロックは、クラスがJava ClassLoaderによってメモリにロードされたときに一度だけ実行されるステートメントのグループです。これは、静的初期化ブロックとも呼ばれます。静的初期化ブロックはスタックメモリに直接入ります。 例 class StaticInitializationBlock{    static{       System.out.println("class without a main method&

  2. 別のパッケージからJavaパッケージにアクセスする方法

    ボスクラスが給与パッケージで定義されている例を使用して理解できます。 package payroll; public class Boss {    public void payEmployee(Employee e) {       e.mailCheck();    } } Employeeクラスが給与パッケージに含まれていない場合はどうなりますか?次に、Bossクラスは、別のパッケージのクラスを参照するために、次のいずれかの手法を使用する必要があります。 クラスの完全修飾名を使用できます。例- payroll.