C# メソッド完全解説:宣言、呼び出し、パラメータ、戻り値、オーバーロード
C# メソッド完全解説
C# メソッドの基礎をマスターしましょう—宣言方法、呼び出し方法、パラメータの扱い、戻り値、組み込み機能の活用まで、明確な例で解説します。
メソッドは特定のタスクを実行する再利用可能なコードブロックです。たとえば、円を描画して色を塗る描画プログラムを作る場合、円の描画と色塗りを 2 つの異なるメソッドに分割できます。このモジュール式アプローチにより、可読性、テスト容易性、再利用性が向上します。
C# でのメソッド宣言
C# でメソッドを定義する基本構文は:
returnType methodName() {
// メソッド本体
}
構成要素:
- returnType – メソッドが返すデータ型を指定。値を返さない場合は
voidを使用。 - methodName – メソッドを参照するための識別子。
- method body – メソッド実行時に動作する文。中かっこで囲む。
例:
void display() {
// コード
}
ここでは display() がメソッド名、void は値を返さないことを示します。
C# でのメソッド呼び出し
宣言後、メソッド名に続けて括弧で呼び出します。display() の例では:
// メソッドを呼び出し
display();

実践例:メソッドの使用
using System;
namespace MethodDemo {
class Program {
// メソッド宣言
public void Display() {
Console.WriteLine("Hello World");
}
static void Main(string[] args) {
// Program インスタンスを作成
Program p1 = new Program();
// Display メソッドを呼び出し
p1.Display();
Console.ReadLine();
}
}
}
出力
Hello World
Program クラスのオブジェクト p1 を作成し、その Display() メソッドを呼び出しています。
メソッドの戻り値の型
メソッドはデータを返すか、void にできます。戻り値が必要な場合、return 文で値を呼び出し元に返し、メソッドの戻り値の型は値の型と一致する必要があります。
int AddNumbers() {
int sum = 5 + 14;
return sum;
}
例:整数を返す
using System;
namespace MethodDemo {
class Program {
// 戻り値ありの static メソッド
static int AddNumbers() {
int sum = 5 + 14;
return sum;
}
static void Main(string[] args) {
int sum = AddNumbers();
Console.WriteLine(sum);
Console.ReadLine();
}
}
}
出力
19
static メソッドはクラス自体に属するため、呼び出しにインスタンスは不要です。
パラメータ付きメソッド
パラメータによりメソッドは入力値を受け取れます。メソッドシグネチャで宣言し、呼び出し時に引数として渡します。
int AddNumber(int a, int b) {
return a + b;
}
引数を渡して呼び出し:
AddNumber(100, 100);

例 1:2 つの数値を加算
using System;
namespace MethodDemo {
class Program {
int AddNumber(int a, int b) {
return a + b;
}
static void Main(string[] args) {
Program p1 = new Program();
int sum = p1.AddNumber(100, 100);
Console.WriteLine("Sum: " + sum);
Console.ReadLine();
}
}
}
出力
Sum: 200
例 2:単一パラメータのメソッド
using System;
namespace MethodDemo {
class Program {
string Work(string task) {
return task;
}
static void Main(string[] args) {
Program p1 = new Program();
string result = p1.Work("Cleaning");
Console.WriteLine("Work: " + result);
Console.ReadLine();
}
}
}
出力
Work: Cleaning
組み込みメソッド
ユーザー定義メソッドの他に、C# には豊富な組み込みメソッドライブラリがあります。例:
Math.Sqrt()– 平方根を計算。string.ToUpper()– 文字列を大文字に変換。
例:Math.Sqrt の使用
using System;
namespace MethodDemo {
class Program {
static void Main(string[] args) {
double result = Math.Sqrt(9);
Console.WriteLine("Square root of 9: " + result);
}
}
}
出力
Square root of 9: 3
ここでは Math.Sqrt は .NET の System.Math クラスの一部で、Microsoft が文書化しています。
詳細は C# 組み込みメソッド を参照してください。
メソッドオーバーロード
C# では、パラメータリストが異なれば同じ名前のメソッドを複数定義できます。これをメソッドオーバーロードと呼びます。
using System;
namespace MethodOverloadDemo {
class Program {
// 1 パラメータのオーバーロード
void Display(int a) {
Console.WriteLine("Arguments: " + a);
}
// 2 パラメータのオーバーロード
void Display(int a, int b) {
Console.WriteLine("Arguments: " + a + " and " + b);
}
static void Main(string[] args) {
Program p1 = new Program();
p1.Display(100);
p1.Display(100, 200);
Console.ReadLine();
}
}
}
出力
Arguments: 100 Arguments: 100 and 200
オーバーロードは可読性と柔軟性を高めます。詳細は C# メソッドオーバーロード を参照してください。
C言語
- 高精度基板検査へ先進X線CTインライン検査システム、オムロンVT-X750シリーズ
- C# 抽象クラスと抽象メソッドをマスターする:実践ガイド
- C# 部分クラスと部分メソッドを理解する
- C# sealed クラスとメソッドをマスターする:使用判断、実例、コードの安全性とパフォーマンス向上
- C#メソッドオーバーロード完全ガイド:概念、例、ベストプラクティス
- C#のメソッド:定義、呼び出し、パラメータ渡し、再帰を完全解説
- C# 匿名メソッド:デリゲート利用をシンプルにする技法
- Javaアノテーションタイプ完全ガイド:事前定義・カスタム・メタアノテーション
- Java String.charAt()完全解説:構文、戻り値、例外、実例
- Javaメソッドオーバーライド: スーパークラスの振る舞いをカスタマイズ
- Java 8メソッド参照完全ガイド:::演算子でコードを簡潔に