0

我有一个派生(Say B)类,我想在其中访问基类(Say A)的某些属性,但不是访问基类的所有属性。例如。我想在派生类中继承的基类中有 5 个属性,例如名称、年龄、名称、位置和薪水。但是,我想访问所有属性接受基类的“薪水”属性(派生类 B 不应访问薪水属性。我将如何实现它

提前致谢。

4

2 回答 2

5
public class Employee
{
    public double Salary { get; private set; }
}

假设:

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

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

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

public class Employee
{
    private double Salary { get; set; }
}
于 2013-09-05T11:48:07.300 回答
0

将此属性标记为私有:

class A
{
    protected string Name { get; set; }
    ...
    private string Salary { get; set; } // derived classes has no access now
}
于 2013-09-05T11:48:51.967 回答