ホームページ > バックエンド開発 > C#.Net チュートリアル > C#における部分キーワードの役割(抜粋)

C#における部分キーワードの役割(抜粋)

黄舟
リリース: 2016-12-14 14:57:35
オリジナル
1141 人が閲覧しました

1. ローカルタイプとは何ですか?

C# 2.0 ローカル型の概念が導入されます。ローカル型を使用すると、クラス、構造体、またはインターフェイスをいくつかの部分に分割し、それらを複数の異なる .cs ファイルに実装できます。

ローカル型は次の状況に適しています:

(1) この型は非常に大きいため、1 つのファイルに実装しないでください。
(2) タイプ内のコードの一部は自動ツールによって生成されたコードであり、自分で作成したコードと混合しないでください。
(3) クラスを作成するには、複数の人が協力する必要があります。

ローカル型は、いかなる実行メカニズムにも影響を及ぼさない純粋な言語層のコンパイル プロセスです。実際、C# コンパイラーはコンパイル中に各部分のローカル型を完全なクラスにマージします。

公開部分クラスプログラム
{
static void Main(string[] args)
{
}
}

部分的 class Program
{
public void Test()
}

2. ローカル型の制限


(1) ローカル型はクラス、インターフェイス、および構造体にのみ適用されます。デリゲートと列挙型はサポートされていません。
(2) 同じ型の各部分には修飾子部分が必要です。
(3) 部分型を使用する場合、型の部分は同じ名前空間に存在する必要があります。
(4) 型のすべての部分を同時にコンパイルする必要があります。

3. 部分型の注意点

(1) キーワードpartialはコンテキストキーワードであり、class、struct、interfaceでのみ使用できます。 キーワードは組み合わされて初めて意味を持ちます。したがって、partial を導入しても、既存のコード内にあるpartial という名前の変数には影響しません。
(2) ローカル型のさまざまな部分は通常、複数の異なる .cs ファイルに配置されますが、C# コンパイラを使用すると、それらを同じファイルに配置できます。

4. ローカル タイプのアプリケーション プロパティ

ローカル タイプのプロパティには「累積的」効果があります。


[属性1, 属性2("Hello")]

部分クラス クラス 1{}


[属性 3, 属性 2("終了")]
部分クラス Class1{}



[Attribute1, Attribute2("Hello"), Attribute3, Attribute2("Exit")]

class Class1 {}


注: Attribute2 属性は、1 つのクラスで複数回使用できます。


5. ローカル型の修飾子

(1) 型のさまざまな部分のアクセス修飾子は、一貫性を維持する必要があります。
(2) 部分クラスがabstract修飾子を使用している場合、クラス全体が抽象クラスとみなされます。
(3) 部分クラスが sealed 修飾子を使用している場合、クラス全体が sealed クラスとみなされます。
(4) クラスの一部で矛盾する修飾子を使用することはできません。たとえば、ある部分で abstract を使用し、別の部分で sealed を使用することはできません。
(5) 部分クラスが static 修飾子を使用している場合、クラス全体が静的クラスとみなされます。

6. ローカル型の基本クラスとインターフェイス


(1) 型の各部分で指定される基本クラスは一貫している必要があります。セクションでは基本クラスを指定できませんが、指定する場合は同じである必要があります。
(2) ローカル型のインターフェイスには「累積的」効果があります。

部分クラス Class2: Iinterface1、Iinterface2 {}

部分クラス Class2: Iinterface3 {}

部分クラス Class2: Iinterface2 {}



class Class2 と同等です: Iinterface1、Iinterface2、Iinterface3 {}

さらに関連記事が必要な場合は、PHP 中国語 Web サイト (m.sbmmt.com) に注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート