iT邦幫忙

2026 iThome 鐵人賽

DAY 19
0

什麼是 getter setter

可利用這兩個來限制屬性的存取


什麼是 Public

前面加 Public 表示這個可以在任何地方被存取


使用方法(限制影片類型)

在 Video 模板中:

namespace ConsoleApp1
{
class Video
{
public string title;
public string author;
private string type;
/前面加 private 表示這個屬性只能在Vedio的class來使用,無法到其他資料型態
public Video(string title, string author, string type)
{
this.title = title;
this.author = author;
Type = type;
}
public string Type
{
get{ return type; } /大括弧寫取得 Type 時,我們要做的東西
set{ /大括弧寫當要設定 Type 時,我們要做的東西
if(value==”教育” || value==”娛樂” || value==”音樂” || value==”其他”)
/value為當要經過Type屬性時,設定的值
{
type = value;
}
else
{
type = “其他”;
}
}
}
}
}

原本的資料型態:

using System;
using ConsoleApp1
Person video1 = new Video( “真D舒服”, “小白”, “哈哈” ); /如果亂寫寫哈哈
Person video2 = new Video( “有那麼舒服”, “小黑”, “娛樂” );
Console.WriteLine( video1.Type ); /因為限制是在Type上,所以寫Type,而不是type

在Vedio class 以外的地方,像要存取 type屬性的話,需要先經過Type屬性的限制
限制 type屬性 能寫的只有 教育、娛樂、音樂、其他 這四個
get括弧內設定先回傳給type
set括弧內設定如果寫教育、娛樂、音樂、其他,就顯示寫的東西,如果不是寫以上四個,則顯示其他
如果原本資料型態 type 亂寫 哈哈,則最終顯示 其他


心得:

今天學習如何使用getter與setter來限制屬性存取,在一些限制輸入的情境當中非常好用,而在遊戲程式中,此技巧也很常運用到限制相關的程式。明天會學習到static attribute 靜態屬性,那我們明天見~


參考影片

【C#】3小時初學者教學 |Csharp | C# 教學 | C# 入門 | C++++
YouTube頻道:GrandmaCan -我阿嬤都會
影片段落: 2: 54:00 ~ 3:03:23 (時間段已設定好)
Yes


上一篇
【Day18】constructor 建構方法
下一篇
【Day20】static attribute 靜態屬性
系列文
從 Hello World 學習 C#,到看懂AI生成的遊戲程式碼 共 20 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言