Singleton(单例)指仅仅被实例化一次的类. 通常用来代表那些本质上唯一的系统组件

    单例的实现: 私有构造方法, 类中保留一个字段实例(static, final), 用public直接公开字段或者用一个public static的getInstance()方法返回该字段(懒汉,饿汉)

    java1.5之后可以用枚举来实现单例,这样做的好处是可以防止反射来多次实例化