特点:
- 该类不能被我见任意实例化
- 该类想外界提供一个可获得该类的实例的方法
- 该类只能被实例化一次
/**
*
* @ClassName: Moto
* @Description: 需要使用单例模式设计的对象
* @author 雨ゆこyu0214fan.gmail.com
* @date 2018年3月19日 下午7:42:05
*
*/
public class Moto {
//单例模式中唯一对象
private static Moto m = null;
//将构造方法私有化,使其他类无法在外部调用
private Moto(){
}
/**
*
* @Title: getInstance
* @Description: 该类的实例化方法
* @param @return
* @return Moto
* @throws
*/
public static Moto getInstance(){
if(m == null){
m = new Moto();
}
return m;
}
//该类提供的其他方法
public void run(){
System.out.println("开车了");
}
}
单例模式测试类
/**
*
* @ClassName: YuKo
* @Description: 测试单例模式
* @author 雨ゆこyu0214fan.gmail.com
* @date 2018年3月19日 下午7:46:41
*
*/
public class YuKo {
public static void main(String[] args) {
Moto m = Moto.getInstance();
m.run();
}
}