欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

理解Android中Activity的方法回調

 更新時間:2015年04月24日 09:27:08   投稿:junjie  
這篇文章主要介紹了理解Android中Activity的方法回調,本文用一個完整實例模擬了Activity方法回調的過程,從而加深理解Activity的方法回調思想,需要的朋友可以參考下

為什么需要方法回調?

方法回調是功能定義和功能分離的一種手段,是一種松耦合的設計思想。在JAVA中回調是通過接口來實現(xiàn)的。作為一種系統(tǒng)架構,必須要有自己的運行環(huán)境,并且要提供用戶的實現(xiàn)接口。

下面通過實例來模擬一下Android中Activity的方法回調思想。
Activity接口

復制代碼 代碼如下:

package com.xujing.test 
//定義接口 
public interface Activity{ 
    //創(chuàng)建時調用的方法 
    public void onCreate(); 
    //啟動時調用的方法 
    public void onStart(); 
    //銷毀時調用的方法 
    public void onDestory(); 

Activity接口的實現(xiàn)類MyActivity

復制代碼 代碼如下:

package com.xujing.test 
//定義一個類實現(xiàn)Activity接口 
public void MyActivity implements Activity{ 
    //實現(xiàn)創(chuàng)建方法,簡單輸出提示信息 
    @Override 
    public void onCreate(){ 
        System.out.println("onCreate...."); 
    } 
 
    //實現(xiàn)啟動方法,簡單輸出提示信息 
    @Override 
    public void onStart(){ 
        System.out.println("onStart...."); 
    } 
 
    //實現(xiàn)銷毀方法,簡單輸出提示信息 
    @Override 
    public void onDestory(){ 
        System.out.println("onDestory...."); 
    } 

系統(tǒng)運行環(huán)境類AndroidSystem

復制代碼 代碼如下:

package com.xujing.test 
//系統(tǒng)運行環(huán)境類 
public class AndroidSystem{ 
    //定義創(chuàng)建常量 
    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){ 
            //創(chuàng)建 
            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(); 
 
        //創(chuàng)建 
        system.run(a,AndroidSystem.CREATE); 
        //啟動 
        system.run(a,AndroidSystem.START); 
        //銷毀 
        system.run(a,AndroidSystem.DESTORY); 
    } 

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

相關文章

  • Android中bindService基本使用方法概述

    Android中bindService基本使用方法概述

    這篇文章主要介紹了Android中bindService基本使用方法,詳細解釋了bindService的基本使用概述及其生命周期,需要的朋友可以參考下
    2015-12-12
  • Android服務Service教程

    Android服務Service教程

    Android的服務是開發(fā)Android應用程序的重要組成部分。不同于活動Activity,服務是在后臺運行,服務沒有接口,生命周期也與活動Activity非常不同。通過使用服務我們可以實現(xiàn)一些后臺操作,比如想從遠程服務器加載一個網(wǎng)頁等,下面來看看詳細內容,需要的朋友可以參考下
    2021-11-11
  • android獲取手機唯一標識的方法

    android獲取手機唯一標識的方法

    這篇文章主要介紹了獲取安卓的手機或者平板的唯一標識的方法,需要的朋友可以參考下
    2014-02-02
  • 跨平臺移動WEB應用開發(fā)框架iMAG入門教程

    跨平臺移動WEB應用開發(fā)框架iMAG入門教程

    這篇文章主要介紹了跨平臺移動WEB應用開發(fā)框架iMAG入門教程,iMAG最大的特點是生成各移動平臺的原生代碼,需要的朋友可以參考下
    2014-07-07
  • Android 實現(xiàn)電話攔截及攔截提示音功能的開發(fā)

    Android 實現(xiàn)電話攔截及攔截提示音功能的開發(fā)

    本文主要介紹Android 實現(xiàn)電話攔截和攔截提示音功能的開發(fā),這里提供實現(xiàn)代碼和詳細講解,有需要的小伙伴可以參考下
    2016-08-08
  • 安卓(Android)開發(fā)之統(tǒng)計App啟動時間

    安卓(Android)開發(fā)之統(tǒng)計App啟動時間

    當大家要改善APP啟動速度優(yōu)化的時候,首先要知道App的啟動時間,那么改如何統(tǒng)計時間呢,下面我們一起來看看。
    2016-08-08
  • Android關于WebView中無法定位的問題解決

    Android關于WebView中無法定位的問題解決

    本篇文章主要介紹了Android關于WebView中無法定位的問題解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • Android 圖片處理縮放功能

    Android 圖片處理縮放功能

    這篇文章主要介紹了Android 圖片處理縮放功能,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • Android View 布局流程(Layout)全面解析

    Android View 布局流程(Layout)全面解析

    這篇文章主要為大家全面解析了Android View 布局流程Layout,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • Android Room數(shù)據(jù)庫容易遇到的問題以及解決方法

    Android Room數(shù)據(jù)庫容易遇到的問題以及解決方法

    這篇文章給大家介紹了我們在Android Room數(shù)據(jù)庫容易遇到的坑以及解決方法,文中有詳細的代碼示例供我們參考,具有一定的參考價值,需要的朋友可以參考下
    2023-09-09

最新評論