如何写一个类,使它不能用new实例化,而只能由另一个类的方法产生,如何写?

indusl 2012-05-14 09:01:08
如何写一个类,使它不能用new实例化,而只能由另一个类的方法产生,如何写?
...全文
241 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
indusl 2012-05-14
  • 打赏
  • 举报
回复
用private关键字可否?
IT-Style 2012-05-14
  • 打赏
  • 举报
回复
这个好像办不到吧,只能在一个类中用单例模式返回对象.
Saleayas 2012-05-14
  • 打赏
  • 举报
回复

class A
{
internal A()
{
}
}
class B
{
static A CreateA()
{
return new A();
}
}
indusl 2012-05-14
  • 打赏
  • 举报
回复
A 和 B 能不存在包含关系吗?

分开写。或者写在一个文件里?
请叫我卷福 2012-05-14
  • 打赏
  • 举报
回复
class A
{
class B
{

}

public static B CreateB()
{
return new B();
}
}

class C
{
// 只能通过 A.CreateB() 来创建 B
}
indusl 2012-05-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
public abstract class A,抽象类,然后其他类中可以返回A的子类实例(多态)
[/Quote]

如果A不要抽象类。如何达成

ClassA a = B.CreateClassA(int para)

如何写?

歌神的卖 2012-05-14
  • 打赏
  • 举报
回复
抽象类,是不能被实例化的,另一个类可以继承它
bdmh 2012-05-14
  • 打赏
  • 举报
回复
public abstract class A,抽象类,然后其他类中可以返回A的子类实例(多态)
种草德鲁伊 2012-05-14
  • 打赏
  • 举报
回复
不公开它的构造方法

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧