|
今天的这篇文章就跟大家讲讲怎样看懂JAVA程序源代码。
JAVA语言博大精深,光讲语法和API就足以出上一两本书了,因此对于语法和其他细节方面的问题在这里就不再罗嗦了,大家可以从http://java.sun.com/j2se/1.4.1/docs/api/找到J2SE1.4.1的全部API。现在,我们从一些概念开始。
JAVA是一门面向对象程序语言,对于面向对象其实已经不用我在这里多讲了,从C++到SMALLTALK再到JAVA,面向对象在SUN公司的手里被发挥到了极致。
什么是对象?对象是由类对象生成的实例。这样说实在是太抽象了,估计没什么人能懂。什么叫类对象生成的实例?我自己也不清楚自己在讲什么了。不如这样,我打个比方,比如我就是一个对象,我的名字叫iDay,这是我的一个属性(Property);我习惯用右手写字,这是我的一个方法(Method)。那么,像我一样的人的一个抽象概念就是类了(Class)。
除了这些,我还有其他的一些属性和方法,比如我直立行走等等。哎,这个是人都站着走路的呀,说对了,人这个概念就是一个抽象类(Abstract Class),它不能直接来指明是哪一个人,因为人这个概念范围太广了,所以抽象类不能直接生成对象。
我们都知道,人是高等动物,因此人也是属于动物这个更抽象的概念,这就是接口(Interface)了。接口要比抽象类更加抽象,就行走来说,动物的行走是五花八门,有两条腿、三条腿还有更多条腿走的,因此接口也是不能直接生成对象的。
下面我们写几个例子:
第一个接口:
[php]
/*
* net/sf/hitnet/dao/DAOFactory.java
*
* 创建日期 2004-3-25
*
*/
package net.sf.hitnet.dao;
/**
* @author iday
*
* 这是一个DAO的工厂接口,用于产生调用不同的DAO对象。
*
*/
public interface DAOFactory {
public Object create(String subClassName) throws
ClassNotFoundException,
InstantiationException,
IllegalAccessException;
}
[/php]
第一个类:
[php]
/*
* net/sf/hitnet/dao/HibernateDAOFactory.java
*
* 创建日期 2004-3-25
*
*/
package net.sf.hitnet.dao;
/**
* @author iday
*
* 用于生成DAO对象,实现于DAOFactory接口。
*/
public class HibernateDAOFactory implements DAOFactory {
/**
* 构造方法
*/
private HibernateDAOFactory() {
}
/**
* DAOFactory的create()方法的实现
*
* @see net.sf.hitnet.dao.DAOFactory#create(java.lang.String)
*/
public Object create(String subClassName)
throws
ClassNotFoundException,
InstantiationException,
IllegalAccessException {
return Class.forName(subClassName).newInstance();
}
}
[/php] |
|