В объектно-ориентированном программировании виртуальное свойство является свойством, поведение которого можно переопределить внутри наследующего класса. Эта концепция является важной частью части полиморфизма объектно-ориентированного программирования (ООП).
взгляд на примере ниже:
public class BaseClass
{
public int Id { get; set; }
public virtual string Name { get; set; }
}
public class DerivedClass : BaseClass
{
public override string Name
{
get
{
return base.Name;
}
set
{
base.Name = "test";
}
}
}
на уровне представления:
DerivedClass instance = new DerivedClass() { Id = 2, Name = "behnoud" };
Console.WriteLine(instance.Name);
Console.ReadKey();
выход будет «тест», так как свойство «Name» был переопределен в производном классе (подкласс).
Это означает то же, что и виртуальные методы. –
Если вы знаете виртуальные методы и знаете свойства, разве это не слишком понятно? –
Странно, мне нужно больше деталей, почему так и как оно используется? – Mackintoast