运行时异常包括RuntimeException类及其子类,表示JVM在运行期间可能出现的异常。 Java编译器不会检查运行时异常。 受检异常是Exception中除RuntimeException及其子类之外的异常。Java 编译器会检查受检异常。
Spring的AOP中,Spring实现AOP功能的原理就是代理模式,①JDK动态代理。②CGLIB动态代理,使用Advice(通知)对类进行方法级别的切面增强。Spring的BeanFactory,根据传入一个唯一标识来获得bean对象。
单一职责原则、接口隔离原则、依赖倒转原则、里式替换原则、开闭原则、迪米特法则、合成复用原则
原型模式的本质是拷贝原型来创建新的对象,拷贝是比new更快的创建对象的方法,当需要大批量创建新对象而且都是同一个类的对象的时候考虑使用原型模式。一般的克隆只是浅拷贝(对象的hash值不一样,但是对象里面的成员变量的hash值是一样的)。
我们可以把工厂类中的工厂方法放到产品类自身之中吗?如果这样的话,就可以将两个继承体系为一个。为了保证用户代码中到时可以通过指针调用clone来动态绑定地生成所需的具体的类。原型模式想对工厂方法模式的另一个好处是,拷贝的效率一般对构造的效率要高。