你真的理解单例模式和静态类的区别吗?在程序设计时应该如何选择

在我们程序设计时经常要缓存一些东西,而单例模式是一个不错的方式。大多数人员会不自觉地使用这个方 式,但还有一种就是静态类。

静态类和单便之间到底有啥不一样呢

最大的区别是单例是一种设计手法,而静态类只是一个关键字。单例模式是软件启动时存在的一个持久实例,可以作为参数进行传递,而静态类是不可以的。

  • 单例比静态类更使用方面更加的多样。可以集成,可以实现接口等。
  • 可以达到异步或延迟加载的,
  • 单例可以达到多态的目标,本质上能达到不同的情况实现
  • 静态类存放在堆栈之中,而单例存在堆之中
  • 单例可以在内存中进行复制,而静态类想都不要想
  • 单例可以控制访问级别

结论

单例相比静态类的区别

  • 测试方便
  • 单例可使用垃圾加收站机制来进行管理
  • 现在MVC流行的时代,可达到依赖注入
  • 扩张性更加的好

如果大家觉得 有用,请关注,点赞、转发,您的鼓励是我最大的动力。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章