Java设计模式之模板方法模式
1) AbstractClass(抽象类):定义了一到多个的抽象方法,以供具体的子类来实现它们;而且还要实现一个模板方法,来定义一个算法的骨架。该模板方法不仅调用前面的抽象方法,也可以调用其他的操作,只要能完成自身的使命。
2) ConcreteClass(具体类):实现父类中的抽象方法以完成算法中与特定子类相关的步骤。
AbstractClass.java
/**
* 东北电力大学因特雷工作室版权所有
* 开发项目组:因特雷工作室JAVA组开发
* 网址:http://itl.nedu.edu.cn
* JAVA组QQ开发群:37523769
* 联系请注明!!!
* 谢谢您的使用!!!!!!!
* 文件创建时间:2010年 2010-1-4月 下午04:13:43日
*/
package com.amly.pattern;
/**
* 类创建时间:2010年 2010-1-4月 下午04:13:43日
* @author wamly
*
*/
public abstract class AbstractClass {
/**
* 模版方法,类似HttpServlet中的service方法
* 东北电力大学因特雷工作室JAVA组
* 文件创建时间:2010年 2010-1-4月 下午04:14:39日
*/
public final void templateMethod(String methodName) {
if("op1".equals(methodName)) {
doOperation1(methodName);
}
if("op2".equals(methodName)) {
doOperation2(methodName);
}
}
protected abstract void doOperation1(String methodName);
protected abstract void doOperation2(String methodName);
}
ConcreteClass.java
/**
* 东北电力大学因特雷工作室版权所有
* 开发项目组:因特雷工作室JAVA组开发
* 网址:http://itl.nedu.edu.cn
* JAVA组QQ开发群:37523769
* 联系请注明!!!
* 谢谢您的使用!!!!!!!
* 文件创建时间:2010年 2010-1-4月 下午07:11:33日
*/
package com.amly.pattern;
/**
* 类创建时间:2010年 2010-1-4月 下午07:11:33日
* @author wamly
*
*/
public class ConcreteClass extends AbstractClass {
/* (non-Javadoc)
* @see com.amly.pattern.AbstractClass#doOperatio
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
import java.io.UnsupportedEncodingException;
/**
* 转换字符串的编码
*/
public class ChangeCharset
{
/** 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块 */
public static final String US_ASCII = "US-ASCII";
/** ISO 拉丁字母表 No.1,也叫作 ISO-LATIN-1 ......
java连接各种数据库方式速查表1.Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,u ......
import java.net.InetAddress;
//本程序实现了获取本地IP地址
public class IP {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InetAddress localHost;
InetAddress []ip;
try{
localHost=InetAddress.getLocalHost();
ip=InetAddr ......
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。
2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、 HtmlConverter、jar、
java、javac、javadoc、javap、javaw、native2ascii、seria ......