Java에서 간단한 이벤트 처리 솔루션을 사용자 지정 이벤트로 작성하려고합니다. 지금까지 ActionListeners를 사용하여 GUI 기반 예제 만 찾았습니다. 나는 C#으로 쓴 코드를 포함시켰다.Java에서 이벤트 처리 C#에서
나는 자바 같은 것을 만들려면 :
using System;
using System.Threading;
namespace EventHandlingPractice
{
class Program
{
static void Main(string[] args)
{
MusicServer mServer = new MusicServer();
Sub subber = new Sub();
mServer.SongPlayed += subber.SubHandlerMethod;
mServer.PlaySong();
Console.ReadKey();
}
}
// this class will notify any subscribers if the song was played
public class MusicServer
{
public event EventHandler SongPlayed;
public void PlaySong()
{
Console.WriteLine("The song is playing");
Thread.Sleep(5000);
OnSongPlayed();
}
protected virtual void OnSongPlayed()
{
if (SongPlayed != null)
SongPlayed(this, EventArgs.Empty);
}
}
// this class is class is the subscriber
public class Sub
{
public void SubHandlerMethod(object sender, EventArgs e)
{
Console.WriteLine("Notification from: " + sender.ToString() + " the song was played");
}
}
}
ActionListeners의 구현 인 관찰자 패턴을 따를 수 있습니다. –