国产探花免费观看_亚洲丰满少妇自慰呻吟_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); 
    } 

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广南县| 宿松县| 旬邑县| 礼泉县| 丰原市| 临泽县| 黄陵县| 房山区| 马龙县| 罗城| 丰县| 讷河市| 扎鲁特旗| 兴安县| 罗定市| 高唐县| 友谊县| 阆中市| 通榆县| 枞阳县| 泾源县| 汶上县| 平利县| 平阳县| 双柏县| 珲春市| 东海县| 芜湖县| 泗水县| 洞头县| 勃利县| 寿宁县| 宁津县| 探索| 察哈| 麻城市| 东乡族自治县| 城步| 西宁市| 仪陇县| 会理县|