C#のMain()メソッドとは?役割と使い方をサンプルコード付きで解説
C#におけるMainメソッドは、プログラムの実行開始時に呼び出されるため、static(静的)として定義されています。Mainメソッドはプログラムのエントリーポイント(開始地点)であり、クラスのインスタンスを作成しなくても自動的に実行されます。
Mainメソッドには、クラスが実行されたときに何を行うかという処理内容が記述され、必要に応じて他のオブジェクトや変数のインスタンス化も行われます。
以下に、Main()メソッドを追加する基本的な方法を示します。
サンプルコード
using System;
namespace Demo {
class HelloWorld {
static void Main(string[] args) {
Console.WriteLine("Hello World");
Console.ReadKey();
}
}
}
上記の例では、Mainメソッドは次のように定義されています。
static void Main(string[] args) {
それぞれの要素の意味は以下のとおりです。
static − 静的メンバーにはオブジェクト(インスタンス)なしでアクセスできるため、プログラム起動時すぐに呼び出せます
void − メソッドの戻り値の型です。この場合、呼び出し元へ値を返しません
Main − すべてのC#プログラムのエントリーポイントです。プログラムの実行は必ずここから始まります
string[] args − コマンドラインから渡される引数を受け取るための文字列配列です
補足:Mainメソッドのバリエーション
Mainメソッドは、終了コードを返す int Main(string[] args) や、非同期処理に対応した async Task Main(string[] args) として定義することもできます。また、C# 9以降では、Mainメソッドを明示的に記述しなくても済む「トップレベルステートメント」という書き方も利用可能です。ただし、学習段階では従来どおりMainメソッドを明示して書くことで、プログラムの構造を理解しやすくなります。
-
Rubyのエイリアス(別名定義)完全ガイド:aliasキーワードとalias_methodの違い
Rubyでは、既存のメソッドに別名(エイリアス)を付ける方法が2つあります。 alias(キーワード) alias_method(メソッド) どちらも同じ目的で使えますが、挙動が微妙に異なるため、初心者にとって混乱しやすいトピックです。 本記事では、両者の違いを詳しく掘り下げ、しっかりと理解できるように解説していきます。 aliasキーワードとは まずはaliasから見ていきましょう。aliasはRubyのキーワードの一つです(ifやdef、classなどと同じ扱いです)。 基本的な書き方は以下の通りです。 alias print_something puts print_someth
-
Rubyのsuperキーワード徹底解説!親クラスメソッドの呼び方と使い分け
Rubyのsuperキーワードは、いったい何をしてくれるのでしょうか? superは、そのキーワードを呼び出したメソッドと同じ名前のメソッドを、親クラスに対して呼び出すための仕組みです。 たとえば、i_like_chocolateという名前のメソッドの中でsuperを呼び出すと、Rubyはそのメソッドを持つクラスの親クラスから、同じ名前のメソッドを探しに行きます。 見つからなければ、さらにその上の祖先クラスへと、通常のメソッド呼び出しと同じように辿っていきます。 最後まで同名のメソッドが存在しなかった場合はNoMethodError例外が発生し、途中にmethod_missingが定義されてい