[C#] - property(속성) : 클래스 안의 private형 멤버변수에 접근
○ property(속성) : 클래스 안의 private형 멤버변수에 접근 |
|||
- property(속성) 클래스 안의 멤버변수에 값 읽기 또는 저장 private 로 접근한정자가 선언된 멤버변수에 사용(private에 접근, 데이터를 넣고 빼기 위해) 변수 관련 set(), 변수 관련 get() 메소드를 하나하나 따로 만들기 번거로워서 사용 get 과 return 이 같이 키워드로 사용 set 과 value 가 같이 키워드로 사용(외부로부터 value로 값이 들어오고 set 으로 설정) private 필드명은 소문자로 시작하고, 속성명은 대문자로 암묵적으로 구성 - 빈 getter / setter : public string Test { get; set; } 인 경우
namespace ConsoleApp1 { public class SaleItem { // == 주로 필드이름은 소문자, 속성이름은 맨 앞에 대문자를 쓴다 == private int number; // 필드 이름 private string name; // 필드 이름 // -- 속성 : private 형에 데이터를 넣기 위해 사용! == public string Name // 속성 이름 { get { return name; } set { name = value; } } public int Number // 속성 이름 { get { return number; } set { if (value < 0 || value > 12) number = 0; else number = value; } }
// 인터페이스 속성 public int price { get; set; } public void print() { Console.WriteLine("{0} {1} {2}", name, price, number); } } class Class1 { static void Main(string[] args) { var item1 = new SaleItem(); item1.Name = "NIKE Hurrache"; item1.price = 109000; item1.Number = 9; item1.print(); } } } |
'C#' 카테고리의 다른 글
[C#] - 델리게이트(delegate), 멀티캐스트 델리게이트 (0) | 2019.04.08 |
---|---|
[C#] - 클래스 배열의 변수과 속성, 인덱스 비교 (0) | 2019.04.08 |
[C#] - 클래스 : class, 접근 한정자 : public protected private (0) | 2019.04.04 |
[C#] - 구조체, 클래스 입출력 : [Serializable] + 컬렉션 + BinaryFormatter (중요) (0) | 2019.04.02 |
[C#] - string 데이터 분리 : Split, Substring, Trim (0) | 2019.04.02 |