본문 바로가기
웹개발/기타 프로그래밍 언어

[c#]프로퍼티와 이벤트

by 지구별 여행자 임탱 2024. 4. 2.
728x90

C#에서 프로퍼티와 이벤트는 객체 지향 프로그래밍의 핵심 요소입니다. 프로퍼티는 클래스의 데이터를 보호하면서 외부에서 접근할 수 있게 해주고, 이벤트는 특정 사건이 발생했을 때 알림을 받을 수 있는 메커니즘을 제공합니다.

프로퍼티(Property)
 - 개념: 클래스 내부의 변수(필드)에 대한 접근을 제어하는 메커니즘. get과 set 접근자를 통해 필드의 값을 읽거나 쓸 수 있습니다. 
 - 사용 예제:

class Person
{
    private string name; // 필드

    // 프로퍼티
    public string Name
    {
        get { return name; }
        set { name = value; }
    }
}

이 예제에서 Name name 필드에 대한 프로퍼티입니다. 외부에서 Name을 통해 name 필드의 값을 안전하게 읽고 쓸 수 있습니다.

 

이벤트(Event)
 - 개념: 특정 사건이 발생했을 때 알림을 받기 위한 메커니즘. 이벤트 핸들러와 함께 사용되며, 이벤트가 발생하면 등록된 이벤트 핸들러가 호출됩니다. 
 - 사용 예제:

using System;

class Program
{
    // 이벤트 선언
    public event EventHandler MyEvent;

    protected virtual void OnMyEvent()
    {
        MyEvent?.Invoke(this, EventArgs.Empty);
    }

    public void TriggerEvent()
    {
        OnMyEvent();
    }
}

class Subscriber
{
    public void Subscribe(Program p)
    {
        p.MyEvent += EventHandlerMethod;
    }

    void EventHandlerMethod(object sender, EventArgs e)
    {
        Console.WriteLine("이벤트 발생!");
    }
}

이 예제에서 Program 클래스는 MyEvent 이벤트를 선언하고, Subscriber 클래스는 이 이벤트를 구독하여 이벤트가 발생할 때마다 EventHandlerMethod가 호출되도록 합니다.

'웹개발 > 기타 프로그래밍 언어' 카테고리의 다른 글

구글에서 만든 GO  (1) 2024.04.03
[C#]LINQ  (0) 2024.04.02
마이크로소프트가 내놓은 C#  (0) 2024.04.02
닷넷(.NET)  (0) 2024.03.28
[PHP]세션과 쿠키 처리 방법  (0) 2024.03.28