我可以在父 class 中拥有 'protected' 成员并在子 class 中继承它吗?

Can I have a 'protected' member in a parent class and inherit it in a child class?

我有admin、customer、supplier这3种用户,都打算继承Userclass。我可以在 User class 中将 protected 用于 usernamepassword 并在子 classes 中继承它们吗?所有教程似乎都使用private,有什么特殊原因吗?

Can I use protected for username and password in user class

你是否应该是另一个问题。如果它们是字段,我个人会说:保留字段 private 并添加一个 protected 属性 - 或者只是简单地:

protected string UserName {get;set;}

或者也许:

protected string UserName {get;private set;}

如果只有基础 class 应该可以设置它,或者

protected string UserName {get;}

如果只有基础 class 应该可以设置它 并且只能在构造函数中设置

旁注:任何关于存储密码的讨论 - 即使在内存中 - 让我感到紧张。