文档章节

单例模式

 梦想家Peng
发布于 2016/03/02 10:47
字数 208
阅读 7
收藏 0

在单例模式中,“例”表示“实例”,即对象,具体的表现为某个类的对象只会有1个。

为了确保其它类不可以随意创建对象,首先需要使用比较严格的访问权限修饰构造方法。

为了使得其它类可以获取该类的对象,声明getInstance()方法,并返回当前类的对象,在方法中创建对象,然后,使用static修饰该方法。

在类中声明当前类的对象的属性,使用static修饰,然后在getInstance()方法里对该属性进行判断,如果为null,则创建,否则,直接返回属性。

public class Student {
  private static Student stu;
  private Student() {
  }
  
public static Student getInstance() {
    if(stu == null) {
      stu = new Student();
    }
    return stu;
  }
}

public class Test {
  public static void main(String[] a) {
    Student stu1 = Student.getInstance();
    Student stu2 = Student.getInstance();
    Student stu3 = Student.getInstance();
  }
}


© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 34
码字总数 15605
作品 0
深圳
私信 提问

暂无文章

Qt那些事0.0.9

关于QThread,无F*k说的。文档说的差不多,更多的是看到很多人提到Qt开发者之一的“你TM的做错了(You're doing it wrong...)”,这位大哥2010年写的博客,下面评论很多,但主要还是集中在2...

Ev4n
14分钟前
0
0
constructor / destructor

_attribute__表示属性,是Clang提供的一种源码注释,方便开发者向编译器表达诉求,一般以__attribute__(*)的方式出现在代码中。为了方便使用,一些常用属性被定义成了宏,经常出现在系统头文...

HeroHY
15分钟前
0
0
大数据教程(7.6)shell脚本定时采集日志数据到hdfs

上一篇博客博主分享了hadoop内置rpc的使用案例,本节博主将为小伙伴们分享一个在实际生产中使用的日志搜集案例。前面的文章我们有讲到过用户点击流日志分析的流程,本节就是要完成这个分析流...

em_aaron
43分钟前
1
0
wave和pcm互转

wav->pcm pcm->wav c#代码: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using Sys......

whoisliang
45分钟前
1
0
Win10:默认的图片打开应用,打开图片时速度明显很慢的解决办法

首先,我们随便地打开一张图片。然后,点击右上角的三个小点,最后点击弹出菜单最下面的“设置”。如下图: 在“设置”中找到下面的“人物”,把它关掉就好了。 原来,默认情况下,Win 10的图...

LivingInFHL
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部