如何限制派生类访问c#中基类的一个属性

Run*_*bit 0 c#

我有一个派生(Say B)类,我想在其中访问基类的一些属性(Say A),但不是基类的所有属性.对于前者 我在基类中有5个属性,如Name,Age,Designation,Location和Salary,我想在derive类中继承.但是,我希望访问所有属性接受基类的"Salary"属性(衍生属性不应该由派生类B访问.我将如何实现它

提前致谢.

dca*_*tro 5

public class Employee
{
    public double Salary { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)

假设:

  • 您希望每个人都可以阅读该属性
  • 你不希望子类能够写入 Salary

但是,如果您希望外部类写入Salary,而不是子类Employee,那么这是不可能的.子类总是至少具有与外部类一样多的特权.

如果您不希望任何人能够读取/写入该属性(Employee类除外),那么只需将其设为私有

public class Employee
{
    private double Salary { get; set; }
}
Run Code Online (Sandbox Code Playgroud)