Board logo

標題: [9-6]getter&setter [打印本頁]

作者: 李泳霖    時間: 2023-12-25 17:24     標題: [9-6]getter&setter

本帖最後由 李泳霖 於 2024-1-9 11:20 編輯

1.創建一個Video類別,擁有影片名稱、作者、類型等變數
2.需要將影片類型,做權限控制,更改為private,避免使用者亂輸入,影片類型只有:教育、娛樂、音樂、其它,四種
3.需使用set與get關鍵字,讓使用者可以設定以及取得影片類型
4.方法比較特殊



  1. //class 、 object
  2. using ConsoleApp1;
  3. using System;
  4. class Program
  5. {
  6.     static void Main()
  7.     {
  8.         string v1, a1, t1;
  9.         Console.Write("請輸入影片名稱:");
  10.         v1 = System.Console.ReadLine();
  11.         Console.Write("請輸入作者:");
  12.         a1 = System.Console.ReadLine();
  13.         Console.Write("請輸入影片類型(教育、娛樂、音樂、其它): ");//需控制亂輸入
  14.         t1 = System.Console.ReadLine();
  15.         Video video1 = new Video(v1, a1, t1);
  16.         Console.WriteLine("==========================================");
  17.         Console.WriteLine("影片名稱為:" + video1.title);
  18.         Console.WriteLine("影片作者為:" + video1.author);
  19.         //Console.WriteLine("影片類型為:" + video1.type);//出錯,type為private
  20.         Console.WriteLine("影片類型為:" + video1.Type);

  21.         //Video video2 = new Video("獅子王", " 羅伯‧民可夫", "娛樂");
  22.        // Console.WriteLine(video1.Type);//不合理不可存取

  23.     }
  24. }
複製代碼
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.Design;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;

  7. namespace ConsoleApp1
  8. {
  9.     class Video
  10.     {
  11.         public string title;
  12.         public string author;
  13.         //影片類型有四種:教育、娛樂、音樂、其他
  14.         //public string type;//類型,限制屬性存取
  15.         private string type;

  16.         public Video(string title, string author, string type)
  17.         {
  18.             this.title = title;
  19.             this.author = author;
  20.             Type = type;
  21.         }
  22. //Type為type的對外代理人,想要在Video以外的類別存取,就需要透過Type
  23.         public string Type
  24.         {
  25.             get//取得影片類型
  26.             {
  27.                 return type;
  28.             }
  29.             set//限制只能有四種類型
  30.             {//value為設定的值
  31.                 if(value=="教育" || value == "娛樂" || value == "音樂" || value == "其它")
  32.                 {
  33.                     type = value;
  34.                 }
  35.                 else//若不再以上四種,強制改為其它
  36.                 {
  37.                     type="其它";
  38.                 }
  39.             }
  40.         }
  41.     }
  42. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2