c# - 我想使用基类,但我不想调用应用程序了解它,我该怎么做? C#

标签 c#

我有 C# 的类库。与类(class)“学生”。它继承自“人”。

我希望类库的用户能够实例化类学生而不是人。

我尝试了以下方法:

public class person

private class student : person

但是我得到了编译错误:

Elements defined in a namespace cannot be explicitly declared as private, protected or protected internal.

这是为什么?我想公开 person 而不是底层的基本类型。

最佳答案

将您的 Person 类声明为抽象。这意味着它不能被实例化。

抽象类不能被实例化为对象,仅提供用于派生子类的目的。

public abstract class Person
{
 // members here
}

public class Student : Person
{
 // members here
}

参见 this MSDN article获取更多信息。

关于c# - 我想使用基类,但我不想调用应用程序了解它,我该怎么做? C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4900147/

相关文章:

c# - 如何初始化 ConcurrentDictionary?错误 : "Cannot access private method ' Add' here"

c# - 剥离 HTML,保留粗体/强标签

c# - 如何使用 FtpWebResponse 创建 WebException 进行测试?

c# - EWS - 尝试加载与会者时列出日历约会失败

c# - WP7中父列表框垂直滚动时如何锁定水平滚动

c# - WCF 数据服务 $filter 在日期时间之间进行搜索

c# - 用于十进制数字点而不是逗号的正则表达式 (.NET)

c# - 为什么我不能转换 ref 参数?

c# - ActiveX 要求用户在每次加载页面时安装

c# - HtmlPage.Document.Cookies 为空