1、java面试
1.为什么用单例而不用static
答案:首先你要明白static是在什么时候初始化的,其设计意图是什么,单例就是我们运行的当前虚拟机中有且只有一个需要的对象,不存在重复。static是给类静态成员变量使用的,属于类的属性,一般是一些常量之类的东西,从加载上来说对于类和对象之间,在类加载到内存时候静态成员变量就存在了,而对象还不存在,另外静态方法只能调用静态方法和静态变量,如果全部搞成静态方法,那么意味着其他成员也是静态的,很不方便,如果不用单例,则不容易扩展,且很麻烦。
1.为什么用单例而不用static
答案:首先你要明白static是在什么时候初始化的,其设计意图是什么,单例就是我们运行的当前虚拟机中有且只有一个需要的对象,不存在重复。static是给类静态成员变量使用的,属于类的属性,一般是一些常量之类的东西,从加载上来说对于类和对象之间,在类加载到内存时候静态成员变量就存在了,而对象还不存在,另外静态方法只能调用静态方法和静态变量,如果全部搞成静态方法,那么意味着其他成员也是静态的,很不方便,如果不用单例,则不容易扩展,且很麻烦。