Menu
CoddyTech

メソッドの宣言

CoddyのC#ジャーニー「基礎」セクションの一部。レッスン 49/70。

メソッドとは、名前が付いたコードの一連の処理です。メソッドの目的は、コードの一部を何度も再利用することです。

たとえば、このコードを見てみましょう。

Console.WriteLine("Welcome to Coddy");
Console.WriteLine("New session...");
Console.WriteLine("Welcome to Coddy");
Console.WriteLine("Another session...");
Console.WriteLine("Welcome to Coddy");

同じコード Console.WriteLine("Welcome to Coddy") を何度も使っています。このコードのもう一つの問題は、メッセージ Welcome to Coddy を Welcome aboard のような別のメッセージに変更したい場合、コードの3行を変更しなければならないことです。この問題を解決するために、メソッドを使います。

メソッドを宣言するには、次の構文を使います。

access_modifier [modifiers] return_type method_name(parameters) {
	// コード
}

この例では、Greetという名前のメソッドを作成します。次のようになります。

public static void Greet() {
	Console.WriteLine("Welcome to Coddy");
}

分解してみると:

  • publicはアクセス修飾子です(このメソッドを誰が使えるかを制御します)
  • staticは修飾子です(メソッドがクラス自体に属することを意味します)
  • voidは戻り値の型です(値を返さないことを意味します)
  • Greetはメソッド名です
  • ()にはパラメーターが含まれます(ここでは空です)

今は、メソッド名の前に必ずpublic staticと書いてください。それぞれの単語の意味は後で説明します。

メソッドを使用/呼び出し/実行するには、Greet();と書きます。

Greet();
Console.WriteLine("New session...");
Greet();
Console.WriteLine("Another session...");
Greet();

これにより、上記と同じ出力になります。

注: C#では、クラス内のメソッド宣言の順序は関係ありません。コンパイラーはクラス全体を先に読み込むため、ソースコード内でメソッドの定義より前でも後でも、そのメソッドを呼び出せます。どちらも有効です。

たとえば、C#では次のどちらも正しいです。

// メソッドを最初に定義し、その後で呼び出す
public static void Greet() {
    Console.WriteLine("Welcome to Coddy");
}

Greet();
Console.WriteLine("New session...");
Greet();
// メソッドを先に呼び出し、後で定義する — C#でも有効
Greet();
Console.WriteLine("New session...");
Greet();

public static void Greet() {
    Console.WriteLine("Welcome to Coddy");
}
challenge icon

チャレンジ

簡単

入力を1つ受け取るプログラムを書きましょう。入力された数値は、以下のメソッドを何回実行するかを示します。 

1から1000までのすべての数値(両端を含む)の合計を計算して出力するメソッドを作成しましょう。メソッド名は自由に付けてください。

自分で試してみよう

using System;

public class Program {
    // メソッドの宣言
    public static void SumNumbers() {
        // メソッドを完成させる
        
    }
    
    
    public static void Main(string[] args) {
        int n = int.Parse(Console.ReadLine());
        for (int i = 0; i < n; i++) {
            // メソッドを n 回呼び出す
        }
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: C#オンラインコンパイラ