04 2019 档案
摘要:```
package DesignPattern; import java.util.ArrayList; public class IteratorPattern { //迭代器一统数组实现和ArrayList实现 //迭代器帮助遍历集合,但是不暴露内部真实实现 public interface Iterator{ boolean hasNext(...
阅读全文
摘要:```
package DesignPattern; import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader; public class TemplateMethodPattern { //模板方法模式 //要点在于共享算法流程,这类似于工厂方法模式
...
阅读全文
摘要:```
package DesignPattern; public class DecoratorPattern { //来自Head First 设计模式 //原始对象 public static abstract class Beverage{ String description="Unkown Beverage"; public S...
阅读全文
摘要:```
package DesignPattern; public class FacadePattern { //外观模式:向外展示简化而同意的接口 //符合最少知识原则,向客户提供简单接口,内部复杂的组件可以在不受影响的情况下进行替换 public static class Amplifier{ int volume; void on(...
阅读全文
摘要:```
package DesignPattern; public class AdapterPattern { //对象适配器模式 //要点:在所需目标类的接口下,包装所需适配类的接口,以便在目标接口处使用 public interface Duck{ void quack(); void fly(); } public...
阅读全文
摘要:``` package DesignPattern; public class CommondPattern { //命令模式的要点:分离发令者,命令,与接令者 //将接令者对外暴露的接口包装成为一致的命令 //发令者拥有命令的实例,发令者调用命令实例,命令实例调用接令者接口从而实现命令动作 //优
阅读全文
摘要:```
package DesignPattern; public class SingletonPattern { //单线程传统单例模式,此种模式在多线程模式下不适用 public static class TraditionSingleton{ private TraditionSingleton(){}//禁用实例化对象,不允许创建多个实例对象 ...
阅读全文
摘要:```
package DesignPattern; public class AbstractFactory { public static class Dough{} public static class Sauce{} public static class Veggies{} public static class Cheese{} public...
阅读全文
摘要:``` package DesignPattern; import java.util.ArrayList; public class FactoryMethodPattern { / 工厂方法模式要点在于将创建方法设定为抽象方法,工厂类为抽象类 适用于不同的原料配置,自定义创建方法从而形成一类产品
阅读全文
摘要:``` package DesignPattern; import java.util.ArrayList; public class ObserverPattern { //来自Head First 设计模式 interface Subject{ void registerObserver(Observer observer); void re...
阅读全文
摘要:```
package DesignPattern; public class SimpleFactoryPattern { public static class Pizza{ public String type="Pizza"; public void prepare(){} public void bake(){} ...
阅读全文
摘要:``` package DesignPattern; public class StrategePattern { //来自HeadFirst设计模式 interface FlyBehavior{ //将飞行行为抽象为接口 void fly(); } interface QuackBehavior{ //将鸭子叫抽象...
阅读全文
摘要:等待/通知范式的单生产者单消费者模型 package Concurrency; public class OneProOneCon { //等待/通知写法的单生产者单消费者模型 public static boolean full=false; public static void main(Str
阅读全文