- 关键字static
- 设计模式与单例设计模式
- 理解main方法的语法
- 类的成员之四:代码块
- 关键字final
- 抽象类与抽象方法
- 接口interface
- 类的成员之五:内部类
使用static关键字的作用就是使得某些特定的数据在内存中只占有一份。相当于全局变量一样。static可以用来修饰类的属性、方法、内部类、代码块。
静态变量是随着类的加载就创建好的。早于对象的创建。属于全局变量共享一份。
如果static修饰方法,则为静态方法,那么就可以直接通过类名调用,而不需要创建对象。静态方法里可以调用静态方法或者变量,但不能调用非静态方法,因为方法不能改变。相当于把C++里的#define和static合体。
设计模式就是一种设计套路。单例设计模式就是只造一个对象。方法就是构造函数设成私有则无法通过new创建。则必须通过类对象中的静态方法获取类。一共有23种设计模式。
创建型模式,共5种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共7种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共11种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式
单例设计模式分为饿汉式和懒汉式
饿汉式
class Bank{
//1.私有化类的构造器
private Bank(){
}
//2.内部创建类的对象
private static Bank instance = new Bank();
//3.提供公共的方法,返回类的对象
public static Bank getInstance(){
return instance;
}
}
懒汉式
class Bank{
//1.私有化类的构造器
private Bank(){
}
//2.内部创建类的对象
private static Bank instance = null;
//3.提供公共的方法,返回类的对象
public static Bank getInstance(){
if(instance==null){
instance=new Bank();
}
return instance;
}
}
饿汉式和懒汉式的区别
饿汉式:坏处:对象加载时间过长。
好处:线程安全的
懒汉式:好处:延迟对象的创建。
坏处:目前写法线程不安全。



