类只能在同一个文件中创建,其他用户只能引用它
本文关键字:其他 用户 引用 同一个 文件 创建 | 更新日期: 2023-09-27 18:35:47
这个问题是以下问题的延续:基本 OOP 相关查询
如何确保OutputClass
对象只能在同一个文件(api.cs)中创建,即
OutputClass object1 = new ObjectClass(3);
而 API 的用户不应该能够为这个类创建新的存储,而只能在从 API 提供它时引用它,即 API 的用户应该只能执行以下操作:
OutputClass object1
而如果他试图创建一个新的 ObjectClass,这应该是不可能的。
你可以使构造函数internal
或private
:
public class OutputClass
{
internal OutputClass()
{
}
}
internal
意味着可以从同一程序集中的任何类(而不仅仅是.CS文件)调用它。 private
意味着它只能从该类中调用(通常通过静态工厂方法)。
你可以将OutputClass
的构造函数声明为private
,假设该类中有一些机制来创建实例。 否则,internal
修饰符可能更合适。
class OutputClass
{
private OutputClass()
{
// inaccessible to anything but OutputClass methods
}
}