fai*_*gir 0 c# inheritance abstract-class derived-class
我有一个abstract class由另一个类继承的如下:
public abstract class Employee
{
public string name{ get; set; }
public string age { get; set; }
}
public class OtherEmployee : Employee
{
public OtherEmployee()
{
}
public string specialField{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这就是我正在做的事情,不知怎的,没有完成它:
Employee otherEmployee= new OtherEmployee();
otherEmployee.specialField = "somevalue";
Run Code Online (Sandbox Code Playgroud)
我没有获得访问权限specialField,而所有属性Employee都是可访问的.我知道这是一个微不足道的问题,但我在这里遇到了障碍.
Employee不知道specialField,只是OtherEmployee.您需要将其强制转换为正确的类才能使用specialField.
Employee otherEmployee = new OtherEmployee();
Run Code Online (Sandbox Code Playgroud)
This doesn't give you an OtherEmployee but an Employee. To be able to use specialField do something like this:
(otherEmployee as OtherEmployee).specialField = yourValue;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1562 次 |
| 最近记录: |