前回の記事:C#入門① C#とは〜Hello world
今回はHello worldを詳しく見てみます。
###プログラム
using System;
public class Hello{
public static void Main(){
Console.WriteLine("hello world!");
}
}
このプログラムをコンパイルして実行すると、hello world!
と表示されます。
###using System;
usingステートメント。
Console.WriteLine
は、System
という名前空間に属する。
そのため、System.Console.WriteLine()
とコード上に記述することで、コードがエラーなく実行される。
このように名前空間すべてを書く書き方を完全修飾名
という。
usingステートメントを使用すると、完全修飾名をいちいち書かなくてもよくなる。
using 名前空間;
とすることで、名前空間
に定義されているクラスを使うことができる。
今回は、System
という名前空間をusingステートメントで記述しているため、完全修飾名を使わずに、Console.WriteLine()
と書くことができる。
(今回のプログラムには書かれていないが)namespace 名前空間{}
で、名前空間を定義することもできる。
同一namespace内に同じ名前のクラスは定義できない。
using System;
// Mainという名前空間にHelloクラスが属している
namespace Main{
public class Hello{
public static void Main(){
Console.WriteLine("hello world!");
}
}
}
名前空間
クラスを階層的に分類するための機構。
プログラムの規模が大きくなり、クラスの数が増えてきたときに、関連性があるもの同士をまとめて管理することができる。
###public class Hello
クラス宣言。class クラス名{}
で宣言することができる。
publicはアクセス修飾子。
publicやprivate、internalといった種類がある。
クラス
オブジェクトを作るための設計図のようなもの。
new
キーワードを用いてインスタンス化して使う。
###public static void Main()
プログラムのエントリーポイント
。
1つのプロジェクトにエントリーポイントは一つだけ。
C#ではメソッド名やクラス名の命名規則にPascal形式を使う。
Pascal形式:単語の頭が大文字
###Console.WriteLine()
引数で受け取った内容を出力し、内容を出力した後に改行を行う。
Write()
は改行はしない。
###コメント
プログラムには含まれていないが、基本的なこと。
//
行コメント。1行をコメントアウトできる。
/* */
ブロックコメント。複数行をコメントアウトできる。
###; セミコロン
C#ではセミコロンで文が区切られる。