メソッドとは、他の言語の関数と同様、特定の関数を完了するために使用されるコードの一部です。
メソッドは、このクラスまたはこのクラスのインスタンスの動作特性と機能実装を定義するために使用されます。メソッドは、クラスとオブジェクトの動作特性を抽象化したものです。メソッドは、手続き指向プログラミングの関数に非常に似ています。プロセス指向では関数が最も基本的な単位であり、プログラム全体は関数呼び出しで構成されます。オブジェクト指向では、プログラム全体の基本単位はクラスであり、メソッドはクラスやオブジェクトに従属します。
[修飾子1 修飾子2 …] 戻り値の型メソッド名(仮引数リスト) {
Java文;… ; &hellip ; … }
オブジェクト名.メソッド名(実際のパラメータリスト);
仮パラメータ: メソッドの宣言時に外部から受信するデータを受け取るために使用されます。
実際のパラメータ: メソッドの呼び出し時に実際にメソッドに渡されるデータ。
戻り値: 実行完了後にメソッドによって呼び出し元の環境に返されるデータ。
戻り値の型: 事前に取り決めた戻り値のデータ型で、戻り値がない場合は明示的に void を指定する必要があります。
注: Java ではすべて値によって渡されます。
例: 1 から n までの数値を出力したい場合、従来の記述方法はメインで記述されます。メソッドを使用しますが、値が多数ある場合は、複数の for ループを記述する必要があるため、コードの繰り返しが多くなります。
public class TestCode02 { public static void main(String[] args) { int n1 = 10; for (int i = 1; i <= n1; i++) { System.out.print(i + " "); } System.out.println(); //当有多个n时,都要每次写一遍for循环 int n2 = 13; for (int i = 1; i <= n2; i++) { System.out.print(i + " "); } System.out.println(); int n3=20; //for... } }
同じコードを抽出してメソッドに配置すると、毎回同じコードを記述することなく、毎回このメソッドを呼び出すことができます
public class TestCode02 { public static void main(String[] args) { int n1 = 10; printNnums(n1); int n2=12; printNnums(n2); int n3=14; printNnums(n3); } public static void printNnums(int n){ for (int i = 1; i <= n; i++) { System.out.print(i + " "); } System.out.println(); } }
このようにして、次のようになります。 n が複数ある場合は、メソッドを 1 回呼び出すだけです。
1。メソッドは次のとおりです: 特定の関数を抽出してコード スニペットを形成します。このコード スニペットをメソッドと呼びます
2. メソッドとメソッドは並列関係にあるため、定義したメソッドをメイン メソッドに書き込むことはできません
3. メソッド定義 –> 形式:
#修飾子:through ' s ' s through ' through through through through through through through use through through through through through through through ‐ ‐ ‐ ‐ ‐ to、およびコードの再利用性
5. メソッド定義の概要形式:
public static
short
,long,
) にすることができます。 float,
double,
char,
boolean) 参照データ型にすることもできます
メソッドname: 名前の意味を理解してください。最初の文字は小文字で、残りはキャメル ケースの名前付けに従います (例: addNum)。通常、名前付けには英語を使用するようにしてください。
#仮パラメータ リストの書き方: いくつかのパラメータとその型を定義します>メソッドの仮パラメータとして使用する不確実要素
異なる戻り値のみがメソッドのオーバーロードを構成しません (例: int add (int a, int b) {} および void add (int a, int b) {} はメソッドのオーバーロードを構成しません)
只有形参的名称不同,不构成方法的重载;(如:int add(int a){}与int add(int b){}不构成方法重载)
public class TestCode03 { public static void main(String[] args) { add(7,8); add(1.02,2.03); add(1,3,5); add(1,4,6,9); } //定义一个int型两数相加 public static void add(int a,int b){ System.out.println(a+"+"+b+"="+(a+b)); } //定义一个double类型的两数相加 public static void add(double a,double b){ System.out.println(a+"+"+b+"="+(a+b)); } //定义一个三个数相加 public static void add(int a,int b,int c){ System.out.println(a+"+"+b+"+"+c+"="+(a+b+c)); } //四数相加 public static void add(int a,int b,int c,int d){ System.out.println(a+"+"+b+"+"+c+"+"+d+"="+(a+b+c+d)); } }
方法的重载:在同一个类中,方法名相同,形参列表不同的多个方法,构成了方法的重载。
方法的重载只跟:方法名和形参列表有关,与修饰符,返回值类型无关。
注意:形参列表不同指的是什么?
(1)个数不同
add() add(int num1) add(int num1,int num2)
(2)顺序不同
add(int num1,double num2) add(double num1,int num2)
(3)类型不同
add(int num1) add(double num1)
以上がJava メソッドの定義、メソッドの呼び出しとオーバーロードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。