1)なぜ他のプロジェクトを参照するのですか?継承だけを使用することはできませんか?
この質問は意味がありません。継承はプロジェクト参照と何の関係がありますか。詳細を教えていただけますか?
2)Visual Studio IDEを使用して参照を提供した後、プロジェクトを名前空間システムに追加する必要があるのはなぜですか?
別のアセンブリを参照するアセンブリ(プロジェクトへの参照を追加すると発生する)と、ファイルでディレクティブを使用するときに発生するクラスを見つける場所を知っている言語との間には固有の違いがあるためです。using
たとえば、プロジェクトに。という名前のクラスを作成するとしますTextBox
。次に、別のファイルでそのクラスを使用します。TextBox
カスタムクラスを参照しているか、参照されているアセンブリ内の別のクラスを参照しているかを言語はどのように認識しますか?その質問への答えは名前空間です。クラス名をその名前空間で完全に修飾することにより、使用しているクラスをコンパイラーに通知します。
ディレクティブは、using
クラス(またはその名前空間内の他のクラス)を使用するたびにではなく、ファイルごとに1回名前空間を指定する方法です。したがってTextBox
、1つのファイル内でクラスを複数回参照する必要がある場合は、毎回これを記述する必要はありません。
MyCodebase.MyAssembly.MyNamespace.MyOtherNamespace.SomethingElse.TextBox
代わりに、using
名前空間全体のディレクティブを含めるので、次のように記述するだけで済みます。
TextBox