2016-05-05 5 views
1

こんにちは、私はC#言語に新たなんだ、誰も私だった使用vb.net vb.netコード:デフォルトコンストラクタ

Module Module1 ' main static class 
    Sub Main() 
     ' output: constructor will be excuted 
    End Sub 
    Sub New() 
     Console.WriteLine("constructor will be excuted") 
    End Sub 
End Module 

しかし、私はC#の既定のコンストラクタを使用する場合クラスプログラムがMainProgramのインスタンスが作成されません、静的メソッドとして実行されるので、それを実行していない

class Program 
{ 

    static void Main(string[] args) 
    { 
     // no output 
    } 
    public Program() 
    { 
     Console.WriteLine("c# the default constructor of class Program is Never executed"); 
    } 
} 

答えて

3

を実行されることはありません。

あなたがしたい場合は、あなたのコンストラクタは、静的にすることができ、しかし、それはあなたがすべてでコンストラクタを必要としない可能性があります、そしてあなたがMain

+0

にすべてのあなたの典型的なコンストラクタコードを移動することができますが、またvb.netでコンストラクタは実行されますが、私はオブジェクトを作成しませんでしたが、 –

+0

@NourAhmed私が知っている限り、 'Module'はC#の静的クラスと同等です - そのためコンストラクタが呼び出されますC#コードはインスタンスコンストラクタです。 – Rob

関連する問題