で ジャワ 、 方法 特定のタスクまたは操作を実行するステートメントのコレクションです。これは、一度書いたら何度も使用できるコード手段の再利用性を提供するため、広く使用されています。簡単な修正も可能です。それぞれ 方法 それ自体の名前があります 呼ばれた 。コンパイラがメソッド名を読み取ると、そのメソッドが呼び出され、指定されたタスクが実行されます。このセクションでは、次のことを学びます 事前定義、ユーザー定義、静的、 そして 抽象的な Javaのメソッド 。
Java での静的メソッドの呼び出し
で ジャワ 静的メソッドとは、メソッドが定義されているクラスのオブジェクトを作成せずに呼び出されるメソッドです。メソッド名の前に static キーワードがあるすべてのメソッドは、 静的メソッド 。を使用して静的メソッドを作成することもできます。 静的 メソッド名の前にキーワードを付けます。を使用して静的メソッドを呼び出すことができます。 クラス名.メソッド名 。
静的メソッドの最良の例は次のとおりです。 主要() 方法。オブジェクトを作成せずに呼び出されます。
Java優先キュー
次のプログラムでは、2 つの数値の最小値を返す min() という名前の Math クラスの静的メソッドを呼び出しています。
StaticMethodCallExample.java
import java.util.*; public class StaticMethodCallExample { public static void main(String args[]) { int a; //calling static method of the Math class a=Math.min(23,98); System.out.println('Minimum number is: ' + a); } }
出力:
Minimum number is 23
Java での事前定義メソッドの呼び出し
Java では、事前定義メソッドとは、クラス内ですでに定義されているメソッドです。事前定義されたメソッドが必要な場合は、そのメソッドを名前で呼び出すだけです。
次の例では、という名前のメソッドを使用しています。 ハッシュコード() クラスの 物体 。事前定義されたメソッドを呼び出すには ハッシュコード() 、オブジェクトを作成しました オブジェクト Object クラスのメソッドなので、Object クラスのメソッドです。と呼ばれるオブジェクトを使用することで、 ハッシュコード() を返すメソッド ハッシュコード オブジェクトの値。
PreDefinedMethodCallExample.java
public class PredefinedMethodCallExample { public static void main(String[] args) { int a; Object obj=new Object(); a=obj.hashCode(); System.out.println('Hash Code of the object is: '+a); } }
出力:
Hash Code of the object is: 2036368507
Java でのユーザー定義メソッドの呼び出し
ユーザー定義メソッドを呼び出すには、まずメソッドを作成し、それを呼び出します。メソッドは、メソッド名に括弧 () を付けた名前でクラス内に作成する必要があります。メソッド定義はメソッド ヘッダーとメソッド本体で構成されます。
以下を使用してメソッドを呼び出すことができます。
method_name(); //non static method calling
メソッドが静的メソッドの場合は、次を使用します。
obj.method_name(); //static method calling
ここで、obj はクラスのオブジェクトです。
Linuxでディレクトリの名前を変更する方法
次の例では、という名前の 2 つのユーザー定義メソッドを作成しました。 showMessage() そして ディスプレイメッセージ() 。の showMessage() メソッドは静的メソッドであり、 ディスプレイメッセージ() メソッドは非静的メソッドです。
を呼び出したことに注意してください。 showMessage() オブジェクトを使用せずに直接メソッドを使用します。一方、 ディスプレイメッセージ() メソッドはクラスのオブジェクトを使用して呼び出されます。
MethodCallExample.java
public class MethodCallExample { //user-defined static method static void showMessage() { System.out.println('The static method invoked.'); } //user-defined non-static method void displayMessage() { System.out.println('Non-static method invoked.'); } public static void main(String[] args) { //calling static method without using the object showMessage(); //called method //creating an object of the class MethodCallExample me=new MethodCallExample(); //calling non-static method me.displayMessage(); //called method } }
出力:
The static method invoked. Non-static method invoked.
クラスには、同じ名前のメソッドを 2 つ以上含めることができます。ここで、同じ名前の 2 つのメソッドをどのように呼び出すことができるかという疑問が生じます。
クラスに同じ名前のメソッドが 2 つ以上ある場合、次のいずれかによって区別されます。 戻り値の型 または パラメータの種類 または パラメータの数 。この概念はと呼ばれます メソッドのオーバーロード 。例えば:
int sum(int x, int y); double sum(double x, double y);
上記 2 つのメソッドは同じ名前です 和() しかし、両方とも違います。最初の sum() メソッドは int 値を返し、2 つの整数 x と y をパラメータとして解析します。一方、2 番目の sum() メソッドは double 値を返し、2 つの double 値 a と y をパラメーターとして解析します。
オーバーロードするプログラムを作ってみましょう サブ() 方法。
MethodOverloadingExample.java
public class MethodOverloadingExample { static int sub(int x, int y) { return x - y; } static double sub(double x, double y) { return x - y; } public static void main(String[] args) { int a = sub(45, 23); double b = sub(23.67,10.5); System.out.println('subtraction of integer values: ' +a); System.out.println('subtraction of double values: ' +b); } }
出力:
subtraction of integer values: 22 subtraction of double values: 13.170000000000002
Java での抽象メソッドの呼び出し
抽象メソッドは、 抽象的な キーワード。抽象メソッドにはメソッド宣言のみがあります。他のクラスで定義された抽象メソッドの本体。抽象メソッドは、 抽象クラス 。抽象メソッドの可視性をプライベートまたはパブリックに設定できます。抽象メソッドの利点に反するため、抽象メソッドをfinalとして宣言することはできません。
抽象メソッドの実際の実装は、子のクラス内に存在する必要があります。抽象メソッドは次のように定義できます。
ボイド0
abstract public void findArea();
抽象メソッドを呼び出す例を作成してみましょう。
次の例では、次の名前のクラスを作成しました。 抽象メソッドの例 そしてそれを抽象として宣言します。このクラスでは、という名前の抽象メソッドを宣言しました。 見せる() 。その後、という名前の別のクラスを作成しました 抽象メソッド呼び出し それを拡張するのは 抽象メソッドの例 クラス。このクラスでは、抽象メソッドを実装しました。
抽象メソッド show() を呼び出すために、親クラスのインスタンスを作成し、抽象メソッドを呼び出しました。
AbstractMethodCalling.java
//abstract class abstract class AbstractMethodExample { //abstract method declaration abstract void show(); } public class AbstractMethodCalling extends AbstractMethodExample { //abstract method implementation void show() { System.out.println('The abstract method called.'); } public static void main(String args[]) { AbstractMethodExample obj = new AbstractMethodCalling(); //calling abstract method obj.show(); } }
出力:
The abstract method called.