event keyword

main
syneffort 2 years ago
parent 8469ced410
commit 63fe8e15d1
  1. 28
      BasicGramms/BasicGramms/BasicEvent.cs
  2. 1
      BasicGramms/BasicGramms/BasicGramms.csproj
  3. 7
      BasicGramms/BasicGramms/Program.cs

@ -10,7 +10,8 @@ namespace BasicGramms
internal class BasicEvent
{
public event Handler EV;
//public event Handler EV; // event 키워드가 없는 경우, 클래스 외부에서 함수 직접 호출이 가능하게됨. (OOP 위반)
public Handler EV;
public void DoTest()
{
@ -25,9 +26,32 @@ namespace BasicGramms
EV($"Event message: {msg}");
}
public void WriteConosle(string msg)
private void WriteConosle(string msg)
{
Console.WriteLine(msg);
}
}
internal class BasicEventUser
{
private BasicEvent Basic = new BasicEvent();
public BasicEventUser()
{
this.Basic.EV += WriteConsole;
this.Basic.EV += WriteConsole;
this.Basic.EV += WriteConsole;
}
public void DoTest()
{
Basic.EV("Test done");
}
private void WriteConsole(string msg)
{
Console.WriteLine($"ByUser: {msg}");
}
}
}

@ -44,6 +44,7 @@
<ItemGroup>
<Compile Include="BasicDelegate.cs" />
<Compile Include="BasicEvent.cs" />
<Compile Include="BasicLambda.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>

@ -13,8 +13,11 @@ namespace BasicGramms
//BasicDelegate del = new BasicDelegate();
//del.DoTest();
BasicEvent evt = new BasicEvent();
evt.DoTest();
//BasicEvent evt = new BasicEvent();
//evt.DoTest();
BasicEventUser evtUser = new BasicEventUser();
evtUser.DoTest();
Console.ReadKey();
}

Loading…
Cancel
Save