package java2;
/*
* 单例设计模式:
* 1所谓单例设计模式,就是采取一定的方法保证在整个软件系统中,对某个类只能存在一个对象实例
*
* 2如何实现
*
*/
public class SingletonTest1 {
public static void main(String[] args) {
Bank.getInstance();
}
//饿汉式单例设计模式
class Bank {
//1私有化构造器
private Bank() {
}
//2 内部创建类的对象
//4要求此对象也声明为私有的对象
private static Bank bank=new Bank();
//3提供公共的静态的方法,返回类的对象
public static Bank getInstance() {
return bank;
}
}
}
Bank要定义成static的,才能在main方法里调用
一种方法: class Bank 改成 static class Bank;
二种方法:28行的 } 移动到13行下面
static变量优先于构造器加载,所以你这逻辑上就是错误的!
Java中类及方法的加载顺序_Morty的技术乐园-CSDN博客_类加载顺序
是这个问题
Inner classes cannot have static declarations:内部类不能有静态声明