国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

理解Android中Activity的方法回調

2020-04-11 11:36:12
字體:
來源:轉載
供稿:網友

為什么需要方法回調?

方法回調是功能定義和功能分離的一種手段,是一種松耦合的設計思想。在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(); 
 
        //實例化MyActivity 
        Activity a = new MyActivity(); 
 
        //創建 
        system.run(a,AndroidSystem.CREATE); 
        //啟動 
        system.run(a,AndroidSystem.START); 
        //銷毀 
        system.run(a,AndroidSystem.DESTORY); 
    } 

通過上述代碼我們可以看出,接口(系統框架)是系統提供的,接口的實現是用戶實現的。這樣可以達到接口統一,實現不同。系統通過在不同的狀態“回調”我們的實現類,來達到接口和實現的分離。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大渡口区| 榕江县| 林口县| 定边县| 潼南县| 沙洋县| 凌源市| 安西县| 乌拉特后旗| 南召县| 左贡县| 通辽市| 句容市| 泊头市| 洛扎县| 樟树市| 虎林市| 通州区| 兴仁县| 手游| 泸水县| 合肥市| 逊克县| 江都市| 康马县| 乌兰察布市| 米脂县| 阜南县| 星子县| 阿瓦提县| 铁力市| 达日县| 错那县| 乃东县| 新建县| 扬州市| 定安县| 咸阳市| 保山市| 阿克陶县| 肥西县|