3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

C#入門② Hello world を詳しく見てみる

Posted at

前回の記事:C#入門① C#とは〜Hello world

今回はHello worldを詳しく見てみます。

###プログラム

MyApp.cs
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内に同じ名前のクラスは定義できない。

MyApp.cs
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#ではセミコロンで文が区切られる。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?