1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; /* * 자동프로퍼티 기능은 c# 3.0에서 도입된 기능 * c#7.0부터는 자동프로퍼티에 초기값이 필요할 때 생성자에 초기화 코드를 작성해야하는 불편함을 * 해소할 수 있도록 초기값을 바로 설정할 수 있다. */ namespace cshapExTwo18 { // c#7.0버젼에서 도입된 자동 프로퍼티 초기화 사용하기 class EmployeeInfo1 { public string Name { get; set; } = "일단빈칸"; public DateTime EntryDate { get; set; } = new DateTime(2011,01,04); // 근속연수 public int serviceLength { get { return new DateTime(DateTime.Now.Subtract(EntryDate).Ticks).Year; } } } // c#3.0버젼에서 도입된 자동 프로퍼티 초기화 사용하기 class EmployeeInfo2 { public string Name { /* get { return name; } set { name = value; } */ get; set; } public DateTime EntryDate { /* get { return entryDate; } set { entryDate = value; } */ get; set; } // 근속연수 public int serviceLength { get { return new DateTime(DateTime.Now.Subtract(EntryDate).Ticks).Year; } } } class Program { static void Main(string[] args) { EmployeeInfo1 ei1 = new EmployeeInfo1(); ei1.Name = "홍길동"; ei1.EntryDate = new DateTime(2019, 1, 21); Console.WriteLine($"{ei1.Name}"); Console.WriteLine($"{ei1.EntryDate.ToString()}"); Console.WriteLine($"{ei1.serviceLength}"); EmployeeInfo2 ei2 = new EmployeeInfo2(); ei1.Name = "홍길순"; ei1.EntryDate = new DateTime(2018, 1, 21); Console.WriteLine($"{ei1.Name}"); Console.WriteLine($"{ei1.EntryDate.ToString()}"); Console.WriteLine($"{ei1.serviceLength}"); } } } | cs |
------------------------------------------------결과창--------------------------------
홍길동
2019-01-21 오전 12:00:00
1
홍길순
2018-01-21 오전 12:00:00
2
'프로그래밍' 카테고리의 다른 글
[WPF] Canvas (0) | 2019.01.30 |
---|---|
[WPF] Grid나누기, 버튼, 이미지, 텍스트블럭 (0) | 2019.01.30 |
[WPF]트리구조 두가지 (0) | 2019.01.28 |
[WPF]레이아웃컨트롤(xaml) (0) | 2019.01.28 |
2_15.자동프로퍼티 (0) | 2019.01.27 |
댓글