【C#】「new演算子」メモリを確保してオブジェクトを作成し表示する

C#のnew演算子とは、変数をnew演算子を使いメモリを確保しオブジェクトを作成することで、プログラムで表示できるようにするものです。
例えば、参照型のFormオブジェクトなどは、Formクラスの設計図からnew演算子をつけることで、実際にオブジェクトを作成し表示しています。

new演算子の構文

型名 変数名 = new クラス名(パラメーター);

()のパラメーターには、そのクラスのコンストラクターに渡すパラメーターを設定します。(パラメーターは何も設定しなくても大丈夫です。)
クラスに自分でコンストラクタ―を定義していない場合は、デフォルトコンストラクターが呼び出されます。

new演算子の例

using System.Windows.Forms;
namespace ConsoleApplication1 { class Program : Form { static void Main() { Form fm = new Form(); Application.Run(fm); } } }

例を実行するとフォームが作成されます。
参照型Fromの変数fmはオブジェクトの参照なので、new演算子を使いメモリ領域を確保しオブジェクトを作成して表示しています。

new演算子を使う型

基本的に、new演算子をつけてメモリを確保して作成しないと、プログラムで表示できないものに対して使います。
代表的なものはFormやTimerなどの参照型です。
参照型は名前の通り、オブジェクトの参照をもっているので、new演算子で参照型のオブジェクトを作成するメモリを確保する必要があります。

new演算子を使わない型

逆にintなどの値型の変数は、変数を宣言した時にその値をしまっておくためのメモリが確保されるので、new演算子を使ってメモリを確保する必要がありません。

値型でもnew演算子を使うことはできる

値型でもnew演算子を使うことはできます。
値型でnew演算子を使うと値型のデフォルトコンストラクタ―が呼び出されますが、メモリの確保はされません。
ただ、値型でnew演算子を使う意味はないので基本的には使いません。