Develop Dairy/C#

자동 구현 Property 알아보기. (2021. 05. 11)

개발자_옹이양 2021. 5. 11. 10:09

📖자동 구현 Property를 알아보자

  • Visual Stuidio(VS)에서는 prop 를 타이핑하고 탭을 누르면 자동으로 property 구문이 생성됨.
  • 자동으로 프로퍼티 get. set이 아래와같이 만들어지는데 아래와 같은 모습이 자동 구현 Property라고 함
public string Id {get; set;}
public string Curriculum {get; set;}

/*초기값이 필요한 경우*/
public string Id {get; set;} = "원하는 값"
public string Curriculum {get; set;} = "원하는 값"
  • 보통 public 변수에나 쓰는 것이므로 private에서는 잘 쓰지 않는게 rule임.
  • e.g Blazor에서는 Parameter값들을 프로퍼티로 선언

  • [Parameter] public string variableName {get; set;}
     
  • get{...}, {set...}을 일컬어 접근자(accessor) 라고 함.
  • set 접근자는 필드(field)에 값을 할당(넣어줌)
  • get 접근자는 필드(field)로부터 값을 읽어옴
  • 필드는 "variableName"의 자리에 있는것을 말함
  • 맨 위에 Id, Curriculum proeprty들을 아래코드처럼 한 단계 풀어서 써보려고함
  • private string id; /* 필드 변수 선언*/
    private string curriculum; /* 필드 변수 선언*/
    
    public string Id  
    {  
        get {return id;}  
        set {id = value;}  
    }
    
    public string Curriculum  
    {  
        get {return curriculum;}  
        set {curriculum = value;}  
    }
    
    /_초기값이 필요한 경우_/
    
    /_필드 변수 선언_/  
    private string id;  
    private string curriculum; 
    
    public string Id  
    {  
        get {return id;}  
        set {id = "원하는 값";}  
    }  
    
    public string Curriculum
    {  
        get {return curriculum;}  
        set {curriculum = "원하는 값";}  
    }
  • 실제로 자동 property를 구현하면 아래와같이 생성이 됩니다.
  • private string id; 
    
    public string GetId() 
    { 
        return id; 
    } 
    public string SetId(string value) 
    { 
        id = value; 
    } 
    
    private string curriculum;
    
    public string GetCurriculum()
    {
        return curriculum;
    }
    
    public string SetCurriculum(string value)
    {    
        curriculum = value;
    }