关于单例模式的问题

fei243451828 2010-12-22 10:49:47
各位大侠,
public class Student
{
static Student()
{
}

private static Student access = new Student();

public Student GetAccess
{
get
{
return access;
}
}
}

这是不是一个简单的单例模式,谢谢
...全文
102 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
雨师88 2010-12-23
  • 打赏
  • 举报
回复
public sealed class Singleton
{
static Singleton instance=null;

Singleton()
{
}

public static Singleton Instance
{
get
{
if (instance==null)
{
instance = new Singleton();
}
return instance;
}
}
}
旅行者I号 2010-12-22
  • 打赏
  • 举报
回复
单例模式的要点有三个;
一是某个类只能有一个实例(首先要隐藏构造函数) private static Student access = new Student();
二是它必须自行创建这个实例 private static Student access = new Student();
三是它必须自行向整个系统提供这个实例
public Student GetAccess
{
get
{
return access;
}
}
烈火蜓蜻 2010-12-22
  • 打赏
  • 举报
回复
不能调用一次就重新new。否则那还能叫单例吗?
_三皮_ 2010-12-22
  • 打赏
  • 举报
回复
应该是的
TimZhuFaith 2010-12-22
  • 打赏
  • 举报
回复
static 怎么会调用一次就new一个。。。。不过是延迟初始化而已
gengchenhui 2010-12-22
  • 打赏
  • 举报
回复
原创 单例模式(自己写的,没有技术含量,跟我一样的菜鸟看吧) 收藏

class Person
{
static Person p;
private string name;

public string Name
{
get { return name; }
set { name = value; }
}
private int age;

public int Age
{
get { return age; }
set { age = value; }
}

private Person()
{ }
public static Person GetPerson()
{
if (p==null)
{
p = new Person();
}
return p;
}
}
貌似这个是“懒汉式”的?你那个不是调用一次就new一个吗?那还是单例?
amanda04 2010-12-22
  • 打赏
  • 举报
回复
public class Student
{
private Student()
{
}

private static Student access = new Student();
public Student Access
{
get
{
return access;
}
}
}

gomoku 2010-12-22
  • 打赏
  • 举报
回复
少一个private的构造函数
kenriy 2010-12-22
  • 打赏
  • 举报
回复
单例模式的要点有三个;
一是某个类只能有一个实例(首先要隐藏构造函数) private static Student access = new Student();
二是它必须自行创建这个实例 private static Student access = new Student();
三是它必须自行向整个系统提供这个实例
public Student GetAccess
{
get
{
return access;
}
}

110,561

社区成员

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

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

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