logo

Javaメソッド

Javaのメソッド Java のメソッドは、いくつかの特定のタスクを実行し、呼び出し元に結果を返すステートメントのコレクションです。 Java メソッドは、何も返さずにいくつかの特定のタスクを実行できます。 Java メソッドを使用すると、次のことが可能になります。 再利用 コードを再入力せずにコードを入力します。 Java では、すべてのメソッドは、C、C++、Python などの言語とは異なるクラスの一部である必要があります。

  • メソッドは関数に似ており、オブジェクトの動作を公開するために使用されます。
  • これは、特定のタスクを実行するコードのセットです。

メソッドの構文

 ( list_of_parameters) { //body }>

手法の利点

  • コードの再利用性
  • コードの最適化

注記: メソッドは時間を節約し、コードを再入力することなくコードを再利用するのに役立ちます。



メソッド宣言

一般に、メソッド宣言には 6 つのコンポーネントがあります。

1. 修飾子: それは、 アクセスタイプ メソッドの、つまりアプリケーション内のどこからアクセスできるか。 Javaには4種類のアクセス指定子があります。

  • 公共: それは アプリケーション内のすべてのクラスでアクセス可能です。
  • 保護されています: これは、それが定義されているクラス内およびそのサブクラス内でアクセスできます。
  • プライベート: それは 定義されているクラス内でのみアクセス可能です。
  • デフォルト: 修飾子を使用せずに宣言/定義されます。これは、そのクラスが定義されている同じクラスおよびパッケージ内でアクセスできます。

注記: それは オプション 構文的には。

2. 戻り値の型: メソッドによって返される値のデータ型、または値を返さない場合は void 。それは 必須 構文的には。

3. メソッド名: フィールド名の規則はメソッド名にも適用されますが、規則は少し異なります。それは 必須 構文的には。

4. パラメータリスト: 入力パラメータのカンマ区切りのリストが、括弧内でそのデータ型の前に定義されます。パラメータがない場合は、空のかっこ () を使用する必要があります。それは オプション 構文的には。

5. 例外リスト: メソッドによって予期される例外がスローされる可能性があります。これらの例外を指定できます。それは オプション 構文的には。

6. メソッド本体: 中括弧で囲まれています。意図した操作を実行するために実行する必要があるコード。それは オプション 構文的には。

Javaのメソッド

Javaのメソッドの種類

Java には 2 種類のメソッドがあります。

1. 事前定義されたメソッド

Java では、事前定義メソッドは、Java クラス ライブラリですでに定義されているメソッドであり、事前定義メソッドと呼ばれます。標準ライブラリ メソッドまたは組み込みメソッドとも呼ばれます。これらのメソッドは、プログラム内でいつでも呼び出すだけで直接使用できます。

2. ユーザー定義メソッド

ユーザーまたはプログラマによって記述されたメソッドは、ユーザー定義メソッドと呼ばれます。これらのメソッドは要件に応じて変更されます。

Java でメソッドを作成する方法

Java でメソッドを作成するには 2 つの方法があります。

Java文字列ビルダー

1. インスタンスメソッド: オブジェクト名を使用してインスタンス データにアクセスします。クラス内で宣言します。

構文:

// Instance Method void method_name(){ body // instance area }>

2. 静的方法: クラス名を使用して静的データにアクセスします。クラス内で宣言されています 静的 キーワード。

構文:

//Static Method static void method_name(){ body // static area }>

メソッドの署名:

これは、メソッド名とパラメーターのリスト (パラメーターの数、パラメーターの種類、パラメーターの順序) で構成されます。戻り値の型と例外はその一部とはみなされません。

上記関数のメソッド シグネチャ:

 max(int x, int y) Number of parameters is 2, Type of parameter is int.>

メソッドに名前を付ける

メソッド名は通常、単一の単語です。 動詞 小文字または複数の単語で始まり、 動詞 小文字の後に 形容詞、名詞。 最初の単語の後は、各単語の最初の文字を大文字にする必要があります。

メソッドに名前を付けるルール:

文字列の配列
  • メソッドを定義するときは、メソッド名が 動詞 そして、から始めます 小文字 手紙。
  • メソッド名に 3 語以上の単語が含まれる場合、最初の名前は動詞で、その後に形容詞または名詞が続く必要があります。
  • 複数の単語からなるメソッド名では、各単語の最初の文字が 大文字 最初の単語を除いて。たとえば、findSum、computeMax、setX、getX などです。

一般に、メソッドは、それが定義されているクラス内で一意の名前を持ちますが、場合によっては、メソッドが同じクラス内の他のメソッド名と同じ名前を持つことがあります。 Javaではメソッドのオーバーロードが許可されています

メソッド呼び出し

このメソッドの機能を使用するには、このメソッドを呼び出す必要があります。メソッドが呼び出されるときは、次の 3 つの状況が考えられます。
メソッドは、次の場合にそれを呼び出したコードに戻ります。

  • これにより、メソッド内のすべてのステートメントが完了します。
  • return 文に到達します。
  • 例外をスローします。

例:

ジャワ
// Java Program to Illustrate Methods // Importing required classes import java.io.*; // Class 1 // Helper class class Addition {  // Initially taking sum as 0  // as we have not started computation  int sum = 0;  // Method  // To add two numbers  public int addTwoInt(int a, int b)  {  // Adding two integer value  sum = a + b;  // Returning summation of two values  return sum;  } } // Class 2 // Helper class class GFG {  // Main driver method  public static void main(String[] args)  {  // Creating object of class 1 inside main() method  Addition add = new Addition();  // Calling method of above class  // to add two integer  // using instance created  int s = add.addTwoInt(1, 2);  // Printing the sum of two numbers  System.out.println('Sum of two integer values :'  + s);  } }>

出力
Sum of two integer values :3>

例 2:

ジャワ
// Java Program to Illustrate Method Calling // Via Different Ways of Calling a Method // Importing required classes import java.io.*; // Class 1 // Helper class class Test {  public static int i = 0;  // Constructor of class  Test()  {  // Counts the number of the objects of the class  i++;  }  // Method 1  // To access static members of the class and  // and for getting total no of objects  // of the same class created so far  public static int get()  {  // statements to be executed....  return i;  }  // Method 2  // Instance method calling object directly  // that is created inside another class 'GFG'.  // Can also be called by object directly created in the  // same class and from another method defined in the  // same class and return integer value as return type is  // int.  public int m1()  {  // Display message only  System.out.println(  'Inside the method m1 by object of GFG class');  // Calling m2() method within the same class.  this.m2();  // Statements to be executed if any  return 1;  }  // Method 3  // Returns nothing  public void m2()  {  // Print statement  System.out.println(  'In method m2 came from method m1');  } } // Class 2 // Main class class GFG {  // Main driver method  public static void main(String[] args)  {  // Creating object of above class inside the class  Test obj = new Test();  // Calling method 2 inside main() method  int i = obj.m1();  // Display message only  System.out.println(  'Control returned after method m1 :' + i);  // Call m2() method  // obj.m2();  int no_of_objects = Test.get();  // Print statement  System.out.print(  'No of instances created till now : ');  System.out.println(no_of_objects);  } }>

出力
Inside the method m1 by object of GFG class In method m2 came from method m1 Control returned after method m1 :1 No of instances created till now : 1>

上記プログラムの制御フローは以下のとおりです。

Java でのメソッドのフローの制御

メソッドにパラメータを渡す

渡されるパラメータの数がわからない場合や、予期せず宣言されたパラメータ数よりも多くのパラメータが使用される場合があります。そのような場合に使用できます

  • 配列を引数として渡す
  • 変数引数を引数として渡す
  • メソッドのオーバーロード。

メソッド呼び出しのメモリ割り当て

メソッド呼び出しはスタックを通じて実装されます。メソッドが呼び出されるたびにスタック領域内にスタックフレームが作成され、その後、呼び出されたメソッドに渡される引数やローカル変数、返される値がこのスタックフレームに格納され、呼び出されたメソッドの実行が終了します。の場合、割り当てられたスタック フレームは削除されます。スタックの先頭を追跡するスタック ポインタ レジスタがあり、それに応じて調整されます。

例: メソッドを実装するための疑似コード

ジャワ
// Define a class public class Example {  // Define instance variables  private int number;  private String name;  // Define accessor (getter) methods  public int getNumber() {  return number;   }  public String getName() {  return name;   }  // Define mutator (setter) methods  public void setNumber(int number)  {  this.number = number;  }  public void setName(String name) { this.name = name; }  // Define other methods  public void printDetails()  {  System.out.println('Number: ' + number);  System.out.println('Name: ' + name);  } } // Use the methods in another part of the code Example example = new Example(); example.setNumber(123); example.setName('GFG Write'); example.printDetails();>

Java でメソッドを使用すると、次のようないくつかの利点があります。

  • 再利用性 : メソッドを使用すると、コードを一度作成して何度も使用できるため、コードがよりモジュール化され、保守が容易になります。
  • 抽象化 : メソッドを使用すると、複雑なロジックを抽象化し、他の人が使用できるシンプルなインターフェイスを提供できます。これにより、コードが読みやすくなり、理解しやすくなります。
  • 可読性の向上 : コードをより小さく、適切な名前のメソッドに分割することで、コードをより読みやすく、理解しやすくすることができます。
  • カプセル化 : メソッドを使用すると、複雑なロジックとデータをカプセル化できるため、管理と保守が容易になります。
  • 関心事の分離 s: メソッドを使用すると、コードのさまざまな部分を分離し、さまざまな責任をさまざまなメソッドに割り当てることができるため、コードの構造と構成が改善されます。
  • モジュール性の向上 : メソッドを使用すると、コードをより小さく管理しやすい単位に分割できるため、コードのモジュール性が向上します。
  • テスト容易性の向上 : コードをより小さく管理しやすい単位に分割することで、コードのテストとデバッグが容易になります。
  • パフォーマンスを向上させた: コードを適切に構造化されたメソッドに編成すると、実行する必要があるコードの量が減り、コードのキャッシュと最適化が容易になり、パフォーマンスが向上します。

Java のメソッドに関する FAQ

Q. Java プログラミングにおけるメソッドとは何ですか?

Java メソッドは、特定のタスクを実行し、呼び出し元に結果を返すステートメントのコレクションです。

Q. Java のメソッドの部分とは何ですか?

Java の 5 つのメソッド部分を以下に示します。

  1. 修飾子
  2. 戻り値の型
  3. メソッド名
  4. パラメーター
  5. メソッド本体

    関連記事:

    • Java は値によって厳密に渡されます
    • Java でのメソッドのオーバーロードと Null エラー
    • Java で静的メソッドをオーバーロードまたはオーバーライドできますか?
    • Java クイズ