我有一个有私有(private)字段的类......(汽车)
然后我继承了这个类...(奥迪)
在 (Audi) 类中,当我键入此内容时。在构造函数中...
私有(private)字段不可用...
我是否需要做任何特别的事情来公开 (cars) 类中的这个私有(private)字段,以便可以通过它访问它们。在(奥迪类)?
最佳答案
一个(坏的)选择是使字段 protected
- 但不要这样做;它仍然会破坏适当的封装。两个不错的选择:
- 让二传手受到保护
- 提供一个接受值的构造函数
例子:
public string Name { get; protected set; }
(C# 2.0)
private string name;
public string Name {
get { return name; }
protected set { name = value; }
}
或:
class BaseType {
private string name;
public BaseType(string name) {
this.name = name;
}
}
class DerivedType : BaseType {
public DerivedType() : base("Foo") {}
}
关于C#继承问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1392922/