「C#」イベントに匿名メソッドを登録するサンプル
説明
クラス やオブジェクトは、何か重要なことが起こった場合に、イベントを使用して他のクラスまたはオブジェクトに通知を送ります。
イベントを送信する ( 発生させる) クラスを パブリッシャー 、イベントを受信する ( 処理する) クラスを サブスクライバー と呼びます。
書式
event デリゲートの型 イベントの名称
使用例
using System;
// デリゲートを定義
delegate void deleA();
class Sample
{
// event デリゲートの型 イベントの名称
public event deleA EventA;
public void funA()
{
Console.WriteLine("イベントに匿名メソッドを登録する");
//イベント名称EventA
EventA();
}
}
class Arkgame
{
public static void Main()
{
//クラスのインスタンスの生成
Sample sp = new Sample();
//匿名メソッドを実行
sp.EventA += delegate() { Console.WriteLine("study skill"); };
sp.EventA += delegate() { Console.WriteLine("becom smart"); };
sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); };
sp.funA();
Console.ReadKey();
}
}
using System;
// デリゲートを定義
delegate void deleA();
class Sample
{
// event デリゲートの型 イベントの名称
public event deleA EventA;
public void funA()
{
Console.WriteLine("イベントに匿名メソッドを登録する");
//イベント名称EventA
EventA();
}
}
class Arkgame
{
public static void Main()
{
//クラスのインスタンスの生成
Sample sp = new Sample();
//匿名メソッドを実行
sp.EventA += delegate() { Console.WriteLine("study skill"); };
sp.EventA += delegate() { Console.WriteLine("becom smart"); };
sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); };
sp.funA();
Console.ReadKey();
}
}
using System; // デリゲートを定義 delegate void deleA(); class Sample { // event デリゲートの型 イベントの名称 public event deleA EventA; public void funA() { Console.WriteLine("イベントに匿名メソッドを登録する"); //イベント名称EventA EventA(); } } class Arkgame { public static void Main() { //クラスのインスタンスの生成 Sample sp = new Sample(); //匿名メソッドを実行 sp.EventA += delegate() { Console.WriteLine("study skill"); }; sp.EventA += delegate() { Console.WriteLine("becom smart"); }; sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); }; sp.funA(); Console.ReadKey(); } }
実行結果
イベントに匿名メソッドを登録する
study skill
becom smart
in arkgame.com