2017-02-12 158 views
-5
using System; 
class Program 
{ 
    class Person { 
     protected int Age {get; set;} 
     protected string Name {get; set;} 
    } 
    class Student : Person { 
     public Student(string nm) { 
      Name = nm; 
     } 
     public void Speak() { 
      Console.Write("Name: "+Name); 
     } 
    } 
    static void Main(string[] args) 
    { 
     Student s = new Student("David"); 
     s.Speak(); 
    } 
} 

--->輸出:名稱:David任何人都可以解釋下面的代碼嗎?

在使用的方法,我們 '得到' 和 '設置' 上面的代碼..

現在...使用系統

; 類節目 { 類Person {

​​

--->輸出:名稱:David

在這裏,我已經刪除了 '得到' 和 '設置' 方法,但輸出是一樣的。那麼這些方法的用途是什麼?

+1

你的問題不清楚。在您發佈的代碼中沒有名爲'get'或'set'的方法。 –

+0

在沒有'get'和'set'的類上聲明的項目被認爲是一個字段,而不是一個propery;字段的處理方式不同。沒有實際功能的'{get; set;}'被稱爲「自動屬性訪問器」,使該項目成爲一個帶有自動支持字段的屬性。 – Claies

+1

作爲示例,'Student.Name'將在第一個示例中運行,但在第二個示例中不起作用。 – Claies

回答

2

你可以確保沒有任何錯誤的輸入或基本上執行額外的代碼,只要屬性被更改...

相關問題