问题1:用static方法修饰,jvm会优先加载,然后一直存放在内存中,那单例模式中,声明对象为什么一定要用static修饰呢?
保证对象的唯一性,单例模式中内存始终只有一个实例,而static修饰就保证了这一点,在任何时刻任意类中引用都是唯一一个实例在操作。
创建单例类的步骤:
1:私有化该类的构造函数
2:通过new在本类中创建一个本类对象
3:提供一个公有的静态方法,将创建的对象返回。
单例类因为不允许其他程序用new来创建该类对象,所以只能将单例类中的方法定义为静态的(随类的加载而加载),静态方法不能访问非静态的成员,故只能将该类中的new的本类对象变成静态的。
技术问答整理(22)
最新推荐文章于 2024-09-25 10:59:43 发布