Спасибо заранее, ребята. Я совершенно новичок в кодировании, поэтому, пожалуйста, будьте терпеливы. Ниже приведен фрагмент кода, над которым я работаю. Ниже приведен полный код. Это выглядит следующим образом:Невозможно определить, как называется аксессуар свойства, используя ключевое слово «this»
using System;
public class Product
{
private string name;
private decimal price;
public string Name
{
get
{ return name; }
set
{ name = value; }
}
public decimal Price
{
get
{ return price; }
set
{ price = value; }
}
public Product(string name, decimal price)
{
this.name = name;
this.price = price;
}
}
В способе загрузки страницы, объект экземпляра и конструктор вызывается следующим образом:
private void Page_Load(object sender, EventArgs e)
{
Product saleProduct = new Product("Kitchen Garbage", 49.99M);
}
Когда продукт создан, конструктор инициализируется с вышеназванными значения. Теперь, если вы посмотрите в конструкторе, у вас есть:
this.name = name;
и
this.price = price;
После двух вышеуказанных строк кода выполняются, то аксессоров свойство автоматически назначать закрытые переменные («имя» и " цена ") с предполагаемыми значениями.
Так как же линия:
this.name = name;
и
this.price = price;
способен вызвать общественные аксессор, названные "Имя" и "Цена"?
я видел только тогда, когда общественный аксессор явно называют такие как:
saleProduct.Name = "Kitchen Garbage";
Я не понимаю, как:
this.name = name;
и
this.price = price;
могут получить доступ к прямая переменная. Я думал, что все дело в аксессоры собственности было то, что вам пришлось пройти через имя свойства для того, чтобы получить доступ к закрытым переменным, такие как:
saleProduct.Name = "Kitchen Garbage";
Можете ли вы помочь и объяснить, как
this.name = name;
и
this.price = price;
имеет доступ к открытой собственности? Даже название свойств, то есть «Имя» и «Цена», заменяется на «Кухонный мусор» и «49.99» соответственно, когда выполняются вышеуказанные две строки кода.
Кроме того, как делает
this.name = name;
и
this.price = price;
знаю какой государственный аксессор позвонить?
Я искал всюду для объяснения, но не повезло.
спасибо.
«Я искал всюду» сомнительно: [это (ссылка на C#)] (https://msdn.microsoft.com/en-us/library/dk1507sz.aspx) – Plutonix
они не вызывают открытый аксессор. – Claies