6.類的定義和學員的使用
阿新 • • 發佈:2020-12-29
///
/// 學員類
///
public class Student
{
#region 欄位
//欄位,又稱為"成員變數",一般在類的內部做資料互動使用,一般使用Private修飾。 //欄位命名規範:一般採用Caml命名法,即首字母小寫。 //欄位的通俗理解:欄位好比我們的個人財產,只供我們自己使用,所以用Private修飾。 /// <summary> /// 欄位:學號 /// </summary> private int studentId; /// <summary> /// 欄位:學生姓名 /// </summary> private string studentNmae = string.Empty; /// <summary> /// 欄位:年齡 /// </summary> private int age; /// <summary> /// 欄位:出生日期 /// </summary> private DateTime birthday; /// <summary> /// 欄位:常數字段 /// </summary> private const double pai = 3.14; #endregion #region 屬性 //屬性其實是外界訪問私有欄位的入口,屬性本身不儲存任何資料。 //屬性一般採用Pascal命名法,即首字母大寫。資料型別要和欄位一致。使用public修飾。 //給屬性賦值,其實是屬性指向的私有欄位賦值。 //讀屬性值,其實是獲取屬性指的私有欄位或者其他值。 /// <summary> /// 屬性:學號 /// </summary> public int StudentId { get { return studentId; } set { studentId = value; } } /// <summary> /// 屬性:姓名 /// </summary> public string StudentNmae { get { return studentNmae; } set { studentNmae = value; } } /// <summary> /// 屬性:姓名 /// </summary> public DateTime Birthday { get { return birthday; } set { birthday = value; } } /// <summary> /// 屬性:年齡 /// </summary> public int Age { ////方法1 //get //{ ////可以新增自己需要的任務邏輯 // return age; //} //set //{ // if (value<18||value>50) // { // value = 18; // } // age = value; //} //方法2.沒有私有欄位的屬性 get { return DateTime.Now.Year - birthday.Year; } } /// <summary> /// 屬性:只讀屬性 /// </summary> public double PAI { get { return pai; } } #endregion #region 方法 public string GetStudent() { string info = string.Format("我的姓名是:{0},年齡是:{1}", StudentNmae, Age); return info; } #endregion } class Program { static void Main(string[] args) { #region 使用類的方法 //[1]正常的方式呼叫方法 //建立物件,給物件分配空間 Student objstu1 = new Student(); //給物件屬性賦值 objstu1.StudentNmae = "張三"; objstu1.Birthday = Convert.ToDateTime("1989-2-8"); ; //呼叫方法 string info=objstu1.GetStudent(); Console.WriteLine(info); //[2]用陣列的方式呼叫方法 List<Student> liststu = new List<Student>(); Student objstu2 = new Student(); Student[] objstu3 = new Student[4]; objstu2.StudentNmae = "李四"; objstu2.Birthday =Convert.ToDateTime("1987-4-9"); objstu3[0] = new Student(); objstu3[0].StudentId = 1001; objstu3[0].StudentNmae = "王五"; liststu.Add(objstu1); liststu.Add(objstu2); liststu.Add(objstu3[0]); //遍歷泛型集合 foreach (Student item in liststu) { Console.WriteLine(item.StudentNmae + ";;;;" + item.StudentId + ";;;" + item.Age); Console.WriteLine("--------------------------"); } #endregion Console.Read(); } }