トレーニング
モジュール
クラスのプロパティとメソッドを実装する - Training
プロパティ アクセサーとアクセス修飾子を使用して読み取り/書き込み、読み取り専用、および書き込み専用のクラス プロパティを実装する方法、およびクラスのメソッドと拡張メソッドを実装する方法について説明します。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
イベントは、宣言元のクラス内でしか呼び出せない特殊なマルチキャスト デリゲートです。 クライアント コードは、イベント発生時に呼び出されるメソッドへの参照を提供することにより、イベントにサブスクライブします。 これらのメソッドは、イベント アクセサーを使用してデリゲートの呼び出しリストに追加されます。イベント アクセサーはプロパティ アクセサーに似ていますが、イベント アクセサーには add
および remove
という名前が付いている点が異なります。 ほとんどの場合、カスタム イベント アクセサーを指定する必要はありません。 コードでカスタム イベント アクセサーを指定していない場合は、コンパイラによって自動的に追加されます。 ただし、カスタム動作の指定が必要な場合もあります。 「インターフェイス イベントを実装する方法」トピックは、そのような場合の一例を示しています。
次の例は、カスタム イベント アクセサーの add と remove を実装する方法を示しています。 アクセサー内で任意のコードに置き換えることができますが、新しいイベント ハンドラー メソッドを追加または削除する前に、イベントをロックすることをお勧めします。
event EventHandler IDrawingObject.OnDraw
{
add
{
lock (objectLock)
{
PreDrawEvent += value;
}
}
remove
{
lock (objectLock)
{
PreDrawEvent -= value;
}
}
}
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。
トレーニング
モジュール
クラスのプロパティとメソッドを実装する - Training
プロパティ アクセサーとアクセス修飾子を使用して読み取り/書き込み、読み取り専用、および書き込み専用のクラス プロパティを実装する方法、およびクラスのメソッドと拡張メソッドを実装する方法について説明します。