質問: c#にて、mainメソッドにstaticがついてるのはなぜでしょうか? また、「staticがついているメソッドから、staticのついていないメソッドを呼び出すことはできない」という文章を読みました。なぜ呼び出してはいけないのですか? また、別のクラスで定義したメソッドは、staticをつけなくても、(staticがついている)Mainメソッド内で呼び出せました。なぜstaticがついているメソッドからstaticがついていないメソッド呼び出せたのですか?
回答: > > c#にて、mainメソッドにstaticがついてるのはなぜでしょうか? > > > Main メソッドはプログラムのエントリポイントで、エントリーポイントは静的 (static) メソッドでなければならないという取り決めがあるからです。 詳しくは以下の記事の「Main の引数、戻り値」のセクションを見てください。 [雑記] エントリーポイント > > また、「staticがついているメソッドから、staticのついていないメソッドを呼び出すことはできない」という文章を読みました。なぜ呼び出してはいけないのですか? > > > 何を見たのか分かりませんが(参考にした記事の url を書くようにしてくださいね)、それは誤解だと思います。 「staticのついていないメソッド」=「インスタンスメソッド」ですが、そのメソッドが定義されているクラスを初期化してインスタンス化すれば当然のことながら呼び出すことはできます。