为什么需要方法回调? 方法回调是功能定义和功能分离的一种手段,是一种松耦合的设计思想。在JAVA中回调是通过接口来实现的。作为一种系统架构,必须要有自己的运行环境,并且要提供用户的实现接口。 下面通过实例来模拟一下Android中Activity的方法回调思想。 Activity接口 复制代码 代码如下: package com.xujing.test //定义接口 public interface Activity{ //创建时调用的方法 public void onCreate(); //启动时调用的方法 public void onStart(); //销毁时调用的方法 public void onDestory(); }
Activity接口的实现类MyActivity 复制代码 代码如下: package com.xujing.test //定义一个类实现Activity接口 public void MyActivity implements Activity{ //实现创建方法,简单输出提示信息 @Override public void onCreate(){ System.out.println("onCreate...."); }
//实现启动方法,简单输出提示信息 @Override public void onStart(){ System.out.println("onStart...."); }
//实现销毁方法,简单输出提示信息 @Override public void onDestory(){ System.out.println("onDestory...."); } }
系统运行环境类AndroidSystem 复制代码 代码如下: package com.xujing.test //系统运行环境类 public class AndroidSystem{ //定义创建常量 public static final int CREATE=1; //定义启动常量 public static final int START=2; //定义销毁常量 public static final int DESTORY=3;
//运行方法 public void run(Activity a,int state){ switch(state){ //创建 case CREATE: a.onCreate(); break; //启动 case START: a.onStart(); break; //销毁 case DESTORY: a.onDestory(); break; } } }
测试类: 复制代码 代码如下: package com.xujing.test //测试类 public class Test{ //主方法 public static void main(String[] args){ //实例化AndroidSystem AndroidSystem system = new AndroidSystem();