摘要: 创建型#抽象工厂模式 概述: 抽象工厂方法是工厂方法模式的延伸,它提供了功能更为强大的工厂类并且具备较好的可扩展性; 优点: 1、抽象工厂模式隔离了具体类的生成,使得客户端并不需要知道什么被创建。 2、当一个产品族中的多个对象被设计成一起工作时,它能够保证客户端始终只使用同一产品族中的对象; 3、增 阅读全文
posted @ 2019-02-24 18:46 胡金水 阅读(1139) 评论(0) 推荐(0) 编辑
摘要: 创建型#工厂方法模式 概述: 工厂方法是简单工厂模式的延伸,它继承了简单工厂模式的优点,同时还弥补了简答工厂模式的不足。工厂方法是最常用的设计模式之一,很多开源框架和API类库的核心模式。 优点: 1、用户只需要关心所需产品对应的工厂,无需关心创建细节,甚至无需知道具体产品类名; 2、所有的具体工厂 阅读全文
posted @ 2019-02-24 18:05 胡金水 阅读(1867) 评论(0) 推荐(0) 编辑
摘要: 创建型#简单工厂模式 概述: 简单工厂模式提供了工厂类用于创建对象,将对象的创建和对象的使用分开; 优点: 1、实现了创建对象和使用对象的分离; 2、无需知道具体产品的类名; 3、通过引入配置文件,无需修改代码即可更换和增加新的具体产品类,提高系统的灵活性; 缺点: 1、职责过重,一旦程序出错,整个 阅读全文
posted @ 2019-02-24 17:40 胡金水 阅读(1901) 评论(0) 推荐(0) 编辑
摘要: 一、7个常用的面向对象设计原则 1、单一职责原则: 它是实现高内聚、低耦合的指导方针;一个对象应该只包含单一的职责,并且该职责被完整的封装在一个类中; 2、开闭原则: 指软件实体应尽量在不改变原有的代码的情况下进行扩展; 3、里氏替换原则: 在运用里氏替换原则时应将父类设计为抽象类或者接口,让子类继 阅读全文
posted @ 2019-02-24 13:14 胡金水 阅读(1558) 评论(0) 推荐(0) 编辑
摘要: final: final是一个修饰符,可以修饰变量、方法和类,如果final修饰变量,意味着变量的值在初始化后不能被改变; 防止编译器把final域重排序到构造函数外;(面试的时候估计答出这个估计会加分哦!一般人都会答上面几个,哈哈~,大牛可以忽略) finalize: finalize方法是在对象 阅读全文
posted @ 2019-02-24 02:44 胡金水 阅读(827) 评论(0) 推荐(0) 编辑