引自:http://www.blogjava.net/renyangok/archive/2006/12/12/87183.html 深入理解abstract class和interface abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区 ...
处理文本对Java应用来说应该算是家常便饭了,在1.4出现之前,Java自身提供的API非常有限,如String、StringTokenizer、StringBuffer,操作也比较单一。无非就是查找substring、分解、合并等等。到1.4的出现可以说Java的文字处理上了一个台阶,因为它支持regular expression了。这可是个重量级而方便的东东啊,缺点是太复杂,学习起来有一定难度。相较而言,Jakarta Commons提供的StringUtils和WordUtils至今还维持着那种简洁而强大的美,使用起来也很顺手。来看一个例子: package sean.study ...
举个很简单的例子: public interface BaseDao<T> { public void create (T t); public void delete (T t); public void update (T t); } public interface UserDao extends BaseDao<User> { public void other (User user); } public interface RoleDao extends BaseDao<Role> { publi ...
在比较对象时候,常常用到 "==" 和 "equals(Object)"。它们常常让初学者感到疑惑。偶曾经初学java时也常常犯这种低级错误,下面给大家一个例子(偶不多作解释了超简单奥!) import java.lang.reflect.InvocationTargetException; import org.apache.commons.beanutils.BeanUtils; public class EqualsDemo { public static void main(String[] args) { String s1 = new String( ...
什么叫面向接口编程[作者:umlchina 转贴自:www.umlchina.com ] 在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程我想就是指按照这种思想来编程吧!实际上,在日常工作中,你已经按照接口编程了,只不过如果你没有这方面的意识,那么你只是在被动的实现这一思想;表现在频繁的抱怨别人改的代码影响了你(接口 ...
议: 1,接口带给我们是更多是灵活性还是提供一种标准? 2,什么时候使用接口。选择Java接口还是抽象类?
利用JDK1.5的语法,可以省略hasNext和next的烦琐,例如: List<String> list = getNamesList();//省略填充内容的代码 for(String name : list) { System.out.println(name); } 同样的方式,也可以用于遍历数组: String [] names = getNames(); for(String name : names) { //... }