C#

C#) property

그린티라떼 2022. 1. 13. 23:59

프로퍼티는 속성을 의미한다. public / protected / private

객체 지향 -> 은닉성

getter / setter 구현해야 함 (귀찮음)

 

아래 예제를 보면 getter/setter가 구현되어 있다.

class Archer
{
    private int hp;
    public int GetHp() { return hp; }
    public void SetHp(int hp) { this.hp = hp; }
}

Archer ar = new Archer();
ar.SetHp(100);
int hp = ar.GetHp();

 

이를 더 간편하게 구현할 수가 있다.

 class Archer
 {
     private int hp; // 초기값 세팅 가능
     public int HP
     {
         get { return hp; }
         set { hp = value; }
     }
 }
 
Archer ar = new Archer();
ar.HP = 100;
int hp = ar.HP;

 

여기서 더 간편하게 구현할 수가 있다.

 class Archer
{
    //초기값 세팅 가능 ex) public int HP { get; set; }=100;
    public int HP { get; set; }
}

 Archer ar = new Archer();
ar.HP = 100;
int hp = ar.HP;

변수 할당과 반환만 사용하는 프로퍼티 완성