`
不平凡的人
  • 浏览: 35423 次
  • 性别: Icon_minigender_1
  • 来自: 嘉峪关
社区版块
存档分类
最新评论
文章列表

代理模式

本文主要从示例入手介绍代理模式 一、实现代理的方式继承、组合 二、动态代理   一、实现代理的方式继承、组合   1、引入:代理模式的实现类似于装饰者模式,都是对功能的增强。很多模式之间的实现都有类似点,不同点可能也是语义有差别   2、继承方式的代理   2.1、代码示例         说明:Moveable接口,以及Tank实现类为以下所有示例公用   package net.oschina.design.proxy; /** * 可移动的事物的接口 * * @author Freedom * */ public interf ...
 本文从以下方面介绍工厂模式 一、总述 二、工厂方法 三、抽象工厂   一、总述 1、分类: (1)简单工厂(静态工厂) (2)工厂方法模式 (3)抽象工厂模式    2、工厂模式意义:       将程序中创建对象的部分单独抽取出来,实现与主程序之间的解耦。具有更好的扩展性及维护性。   3、工厂方法模式与抽象工厂模式异同点   (1)相同点:都是将对象(产品)单独抽取形成一个产品族,然后将创建对象的工厂也向上抽取形成一个工厂族   (2)异同点:          ①抽象工厂中会有一系列的产品,而工厂方法中只有一个抽象的产品;          ② ...

责任链模式

本文从以下几个示例介绍责任链模型   一、概念        责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决 ...

观察者模式

本文从以下方法阐述观察者模式 一、定义观察者 二、观察者模式示例 三、推模型与拉模型 四、JAVA内置观察者 五、总结   一、定义观察者模式    1、定义        观察者模式为对象的行为模式,主要定义一种一对多的对象关系(观察者:主题对象=1:n)。让多个观察者对象去监听同一个主题对象Subject(被依赖的对象),当主题对象的内容状态发生变化时,会通知所有注册过的观察者对象,促使观察者对象的内容更新。   2、观察者模式的结构图 (1)以订报纸业务为例:           报社:Subject(主题类,被依赖的对象)           订阅者:O ...
本文从以下方面介绍策略模式 一、策略模式概念 二、策略模式的示例 三、策略模式的优缺点 四、总结   一、策略模式概念        策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,交给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。      此模式涉及到三个场景:   ●  环境(Context)(用于客户端具体实现):持有一个Strategy的引用。   ●  抽象策略(Strategy)(行为族):这是一个抽象角色,通常由一个接口或抽象类实现。此角色给出所有的具体策略类所需的接口。   ●  具 ...

枚举类

本文介绍JAVA SE5中枚举的使用   一、概念   关键字enum可以将一组具名值的有限集合创建为一种新的类型,而这些具名可以作为常规的程序组件使用。   二、向枚举中添加新方法   1、示例 package net.oschina.tkj.chapter19.enumclass; /** * 枚举类中添加方法 注意:先定义枚举类实例,最后一个实例要用分号隔开 * name(),toString()方法返回枚举类实例名称,添加枚举类构造器可以返回额外信息 * * @author Freedom * */ public enum BallT ...

泛型(二)

本文主要介绍一下泛型的上限,下限以及通配符?的使用事项: 代码示例如下: package net.oschina.tkj.chapter15.limit; /** * 泛型上下限,?通配符 * * @author Freedom * * @param <T> */ public class BasicInfo<T> { private T var; ...

泛型(一)

泛型是JDK5时的技术,主要作用于编译时期,是编译时期的安全技术。 一、元组 1、引入:仅一次方法调用就能返回多个对象,编码中应该会使用到该功能。但是对于一个方法的return来说,一次只能返回一个对象。因此,解决办法就是创建一个对象,让其持有想要返回的多个对象。每次需要该种场景的情况时,我们就创建一个类来完成工作。 2、元组:将一组对象直接打包存储于一个单一的对象中。可以理解为元组为一个容器对象,该容器对象只允许读取其中的元素,不允许向其中存放新的元素。因此,该对象的成员声明时用final修饰。 3、示例如下: package net.oschina.tkj.chapter15. ...

协变返回类型

继承过程中子类重写父类方法的现象 1.如下例 package net.oschina.tkj.chapter8.returntype; /** * 协变返回类型 * @author Freedom * */ public class Grain { public String toString(){ return "grain"; } } package net.oschina.tkj.chapter8.returntype ...

多态小结

看了关于thinking in java的书籍对于多态写一下自己的理解 一.多态时成员变量的特点: 1.不管是静态成员变量,非静态成员变量以及final成员变量都不具备多态性 2.简单理解:即编译时看父类型所对应的类是否有该变量如果有编 ...

SSM框架(一)

SSM框架初探 一.创建一个Maven的项目   新建的maven web项目,创建成功之后出现以下两种错误: (1)-->webapp下缺少web.xml文件需要手动创建一个 (2)-->编译器的版本为1.5,需要切换到当前JDK的版本。pom.xml文件中需要添加如下内容: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId ...
好久没有写过博客,重拾博客记录自己成长的点滴... 一.笔试题 1.spring的事务有那些类型,分别说明一下作用?     PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。 PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。 PROPAGATION_REQUIRES_NEW--新建事务,如果当前存在事务,把当前事务挂起。 PROPAGATION_NOT_SUPPORTED--以非事 ...
window平台NodeJs环境搭建: 由于,这两天项目需要,所以开始学习nodejs的相关知识。 1.由于网速的原因,附件就不上传我搭建时所使用的node.js和npm了。 提供官方下载地址:http://nodejs.org/#download(nodejs) https://github.com/isaacs/npm/tags(npm) 2.下载完必要的安装包后: 创建D:\nodejs目录,并将nodejs安装到该路径下。并将"D:\nodejs"加入系统环境变量PATH中,便于在任意位置执行node应用。   3.将npm源代码解压到D:\npm ...
 相同点:   Get与post(对于“post”除非相应里有cache-control或者
1. 什么是ajax,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax:   AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。   Ajax包含下列技术:   基于web标准(standards-based presentation)XHTML+CSS的表示;   使用 DOM(Document Object Model)进行动态显示及交互;   使用 XML 和 XSLT 进行数据交换及相关操作;   使用 XMLHttpRequest 进行异步数据查询、检索;   ...
Global site tag (gtag.js) - Google Analytics