摘要:
概念 图的遍历有两种遍历方式:深度优先遍历(depth-first search)和广度优先遍历(breadth-first search)。1.深度优先遍历 基本思路:首先从图中某个顶点V0出发,然后依次从V0相邻的顶点出发深度优先遍历,直至图中所有与V0路径相通的顶点都被访问了;若此时尚有顶... 阅读全文
摘要:
下列Java代码中变量a、b、c分别在内存的()存储区存放。class A{ private String a = "a"; public boolean methodB(){ String b = "bb"; final String c = "cc... 阅读全文
摘要:
《大话设计模式》中观察者模式这样描述: 观察者模式(Observer Pattern):又叫发布-订阅(Publish/Subscribe)模式。定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。观察者模... 阅读全文
摘要:
《大话设计模式》中讲建造者模式(Builder Pattern)引用一个例子:麦当劳、肯德基的汉堡不管在哪家店里吃,什么时间时间去吃,至少在中国,味道基本都是一样。而那道“鱼香肉丝”几乎是所有大小中餐馆饭店都有的一道菜,但却可以吃出万种口味来,这是为什么呢?建造者模式(Builder Pattern... 阅读全文
摘要:
外观模式(Facade Pattern):为了系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式(Facade Pattern)结构图 Facade外观类知道哪些子系统负责处理请求,将客户的请求代理给适当的子系统对象。SubSystem Cl... 阅读全文
摘要:
《大话设计模式》中迪米特法则(Law of Demeter, LoD)也叫最少知识原则(Least Knowledge Principle, LKP)定义如下: 迪米特法则(Law of Demeter, LoD):如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类... 阅读全文
摘要:
《大话设计模式》中模板方法模式(TemplateMethod Pattern)定义如下:模板方法模式(TemplateMethod Pattern):定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法模式(Templ... 阅读全文
摘要:
《大话设计模式》书中描述原型(Prototype)模式: 原型模式(Prototype):用用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式(Prototype Pattern)结构图这种形式涉及到三个角色:客户(Client)角色:客户类提出创建对象的请求。抽象原型(Pr... 阅读全文
摘要:
今年放假比去年早了一些,就提前回来了。感觉挺爽,结果教研室电脑没有带回来,悲剧是导师让我维护一下以前的项目,只能屁颠屁颠的搞起呀。只能用自己的笔记本搭建android开发环境。由于前阶段听说Android Studio用着爽歪歪,于是尝试在超卡的笔记本上跑Android Studio。哇咔咔,费... 阅读全文
摘要:
工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。工厂方法模式(Factory Method)结构图简单工厂VS工厂方法 简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相... 阅读全文