摘要: 简介 委派模式不属于GOF23种设计模式, 主要角色有三种: 抽象任务角色, 委派者角色, 具体任务角色. 实现层面上, 定义一个抽象接口, 它有若干实现类, 他们真正执行业务方法, 这些子类是具体任务角色; 定义委派者角色也实现该接口, 但它负责在各个具体角色实例之间做出决策, 由它判断并调用具体 阅读全文
posted @ 2018-09-07 12:56 罪恶斯巴克 阅读(7282) 评论(0) 推荐(2) 编辑
摘要: 接口 接口可以包含常量, 且不需要publish static final修饰, 接口的域会自动添加该修饰符. Java建议不要写多余的代码,因此省略修饰符更简洁. 全部都是常量的接口背离了接口的初衷,不建议使用 Java SE8 中, 允许接口增加静态方法,但这也有悖接口的初衷 接口的默认方法实现 阅读全文
posted @ 2018-09-06 22:58 罪恶斯巴克 阅读(292) 评论(0) 推荐(0) 编辑
摘要: Spring 简介 Spring 是一个开源轻量级企业应用架构,目的是为了简化企业级应用开发。(1)Spring 框架可以帮我们管理对象的生命周期,帮助我们管理对象间的依赖关系,相互协作;(2)Spring 框架提供了一种能力,帮助抽离日志,异常处理,性能统计,安全性以及数据库事务管理等,这些均可以 阅读全文
posted @ 2018-09-06 21:50 罪恶斯巴克 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 类,超类和子类 super和this看似有相似的概念, 但实际没有可比性,this持有对象本身的引用, 可以赋值给另一个变量,super则不具备这样的功能, 它只是一个指示编译器调用超类方法的关键字 调用super()构造器的语句必须是子类构造器的第一条语句 Object: 所有类的超类 判断两个对 阅读全文
posted @ 2018-09-05 13:19 罪恶斯巴克 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 简介 策略属于行为型模式的一种,策略模式允许对象的行为或算法在运行时改变,使用不同的算法达成相同的结果或目的. 实现层面上,定义一个抽象的算法接口, 然后根据具体算法的不同定义不同的类去实现该接口, 调用时不同实现的实例可以相互替换. 策略模式适用于多个类只有行为不同,运行时根据上下文决定使用哪种行 阅读全文
posted @ 2018-09-05 11:18 罪恶斯巴克 阅读(499) 评论(0) 推荐(1) 编辑
摘要: 简介 模板方法属于行为型模式的一种. 实现层面上, 在抽象类中定义了算法或流程的骨架, 将其中易变的部分延迟到子类实现, 也就是允许它的子类实现其中的某些步骤. 模板方法适用于算法不变, 但算法中某些步骤有变化的场景, 例如Spring中JDBC事务操作,打开连接 开启事务 执行sql 提交事务 关 阅读全文
posted @ 2018-09-04 21:33 罪恶斯巴克 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 用户自定义类 注意在所有方法中都不要命名与实例域同名的变量 final修饰的大都是基本类型或不可变类的域, 可变类用final休息容易造成混乱 静态类和方法 final修饰的域可以是public的; NumberFormat使用工厂方法生成实例; 不用构造函数实例化的原因是(1)无法命名构造器,对于 阅读全文
posted @ 2018-09-03 18:28 罪恶斯巴克 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 简介 原型模式是属于创建型模式的一种,是通过拷贝原型对象来创建新的对象. 万能的Java超类Object提供了clone()方法来实现对象的拷贝. 可以在以下场景中使用原型模式: 1. 构造函数创建对象成本太大(性能或安全成本) 2. 要保存对象的状态, 且状态变化较小, 不会过多占用内存时(状态变 阅读全文
posted @ 2018-09-03 16:53 罪恶斯巴克 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 简介 抽象工厂模式是创建型模式的一种, 与工厂方法不同的是抽象工厂针对的是生产一组相关的产品, 即一个产品族. 抽象工厂使用工厂方法模式来生产单一产品, 单一产品的具体实现分别属于不同的产品族. 抽象工厂即是对产品族的抽象. 工厂类一般使用单例实现(工厂方法的工厂类也是如此) 意图 定义了一个创建对 阅读全文
posted @ 2018-09-02 11:01 罪恶斯巴克 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 一个简单的 Java 应用程序 访问修饰符 public,private,protected main 方法必须时public修饰的,C 则不必须 数据类型 可以用16进制表示浮点数 可以用2,8,16进制表示整数 Double.POSITIVE_INFINITY,Double.NEGATIVE_I 阅读全文
posted @ 2018-09-01 09:24 罪恶斯巴克 阅读(186) 评论(0) 推荐(0) 编辑