In meiner abgeleiteten Klasse habe ich eine Override-Eigenschaft das ein Hintergrundfeld verwendet, das von der Basisklasse stammt.
Code: Select all
public class Developer : Employee
{
protected override string Name
{
get
{
if (_name == null)
{
// ....
// ....
// ....
_name = "derived_value";
}
return _name;
}
}
}
Was ist eine gute Option?
Option 1: Setzen Sie ein Hintergrundfeld auf geschützt.
Code: Select all
public class Employee
{
protected string _name = null;
protected virtual string Name
{
get
{
if (_name == null)
{
// ....
// ....
// ....
_name = "base_value_1";
}
return _name;
}
}
}
Code: Select all
public class Employee
{
protected virtual string _name { get; set; } = null;
protected virtual string Name
{
get
{
if (_name == null)
{
// ....
// ....
// ....
_name = "base_value_2";
}
return _name;
}
}
}