我不知道如何正確輸出私有字符串子。例如,如果我想在私人中輸出「名稱」,編譯器會顯示錯誤:由於其保護級別而無法訪問。正確的方法是使用public「名稱」,而不是私人「名稱」?因爲我想通過私人訪問它,但不知道如何解決錯誤。輸出私有字符串子
class Person
{
private string name, lastname;
public string Name
{
get { return name; }
set { name = value; }
}
public string Lastname
{
get { return lastname; }
set { lastname = value; }
}
}
class Program
{
static void Main(string[] args)
{
Person person1 = new Person("Matt", "Houdson");
Console.WriteLine("Name: {0}", person1.name);
//is inaccessible due its protection level
但這是正確的方法嗎?這意味着我不能通過私人字符串訪問公共字符串? – Slasher
是的,使用「getter」和「setter」方法創建公共訪問屬性以允許對私有屬性進行受控訪問是非常標準的。這實質上是封裝背後的原理(https://en.wikipedia.org/wiki/Encapsulation_(computer_programming)) – nb1987
可能通過私有「名稱」訪問公共「名稱」? – Slasher