论坛首页 Java企业应用论坛

接口用法随想

浏览 11678 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (2) :: 隐藏帖 (2)
作者 正文
   发表时间:2010-05-10   最后修改:2011-02-21

关于接口我想大家都不陌生了,关于接口是否有必要的讨论也有很多,我在这里讲的是我对接口用法的一些小方法:


例如:

public interface BeforeAndAfter {
	
	public void beforeDo();
	
	public void afterDo();

}

 

 

public class DoSomething {

	private BeforeAndAfter baa;
	
	public DoSomething(BeforeAndAfter baa){
		this.baa = baa;
	}
	
	public void doSomething(){
		doBefore();
		
		// something you want to do here
		
		doAfter();
	}
	
	private void doBefore(){
		if(baa != null){
			baa.beforeDo();
		}
	}
	
	private void doAfter(){
		if(baa != null){
			baa.afterDo();
		}
	}
}

 

 

public class TheMain {

	public static void main(String[] args) {
		DoSomething ds = new DoSomething(baa);
		
		ds.doSomething();

	}
	
	static BeforeAndAfter baa = new BeforeAndAfter(){

		public void afterDo() {
			//do something after;
			
		}

		public void beforeDo() {
			//do somethis before;
			
		}
		
	};

}

 以上代码是运用接口将主要操作主体部分和其它一些操作分离开,像android里面点击事件控制例如:

SetOnClickListener 接口也是运用的这类方法。。。

 

是否还有更好接口的运用,请大家发言

   发表时间:2010-05-10  
其实lz采用的代理模式,这是其中一种用法
0 请登录后投票
   发表时间:2010-05-10  
感觉这想一种设计模式的用法呢 个人感觉介和aop不一样
0 请登录后投票
   发表时间:2010-05-11  
怎么说呢。需求和实现分开。接口是需求
0 请登录后投票
   发表时间:2010-05-11  
代码已经侵入了
0 请登录后投票
   发表时间:2010-05-11  
一遍看下来,以为是接口适配器。
0 请登录后投票
   发表时间:2010-05-11  
代码不可能一点都不侵入,侵入部分可以替换就ok了
0 请登录后投票
   发表时间:2010-05-11  
在实现里留了个口,随时准备插入
0 请登录后投票
   发表时间:2010-05-11  
嗯  看起来确实像一种模式
0 请登录后投票
   发表时间:2010-05-11  
就是运用了组合 类似策略 和代理模式
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics