あるコンストラクターを別のコンストラクターから呼び出す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
-
mainメソッドなしでJavaプログラムを実行できますか?
はい、静的ブロックを使用することで、mainメソッドなしでJavaプログラムを実行できます。 Javaの静的ブロックは、クラスがJava ClassLoaderによってメモリにロードされたときに一度だけ実行されるステートメントのグループです。これは、静的初期化ブロックとも呼ばれます。静的初期化ブロックはスタックメモリに直接入ります。 例 class StaticInitializationBlock{ static{ System.out.println("class without a main method&
-
別のパッケージからJavaパッケージにアクセスする方法
ボスクラスが給与パッケージで定義されている例を使用して理解できます。 package payroll; public class Boss { public void payEmployee(Employee e) { e.mailCheck(); } } Employeeクラスが給与パッケージに含まれていない場合はどうなりますか?次に、Bossクラスは、別のパッケージのクラスを参照するために、次のいずれかの手法を使用する必要があります。 クラスの完全修飾名を使用できます。例- payroll.