安卓關於接口的使用

  • 個人淺談接口的使用:

在java中通過繼承可以實現其父類的方法,但是在java中一個類只能擁有一個基類(說明:這裏不包括object),嚴格意義上來說只有一個直接父類,我們通常的類中都是有一個隱藏的繼承關係,繼承至object,當我們使用關鍵字extends 選擇自己需要繼承的類的時候,object就不是我們的直接父類,說這麼多隻是作爲一個基本的引導,因爲在父類可以擁有多個子類,而子類只有一個父類,當一個父類擁有多個子類,那麼他就會爲這些子類提供許多的抽象方法(我們更多的是這麼使用),來滿足子類的重寫等操作,當子類越多的時候就會導致我們的父類中代碼雍鍾,數量龐大,後期整理,修改都是不方便的 ,對於單個子類來說更本也用不到父類的一些方法;那麼接口就出現了 通過接口我們一樣可以實現對方法的重寫,在安卓中我們可以還可以使用接口來進行消息的傳遞響應;
-如何使用接口:
簡單描述接口的使用步驟:
首先創建一個接口 interface關鍵字創建—-構造抽象方法—-實現接口,重寫接口方法—接口的實例化-啓用接口方法傳遞消息;
下面是一個很簡單的示例:


public class MainActivity extends Activity implements mycallback{
 private  Button mybutton;
 private   TextView mytext;
private int i=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
    }
   private void init() {

          mybutton=(Button) findViewById(R.id.mybutton);
          mytext=(TextView) findViewById(R.id.text);
          mybutton.setOnClickListener(new myclass(this, i));

}
@Override
public void getposition(int i) {
           mytext.append("接口回調傳回的數字:"+i+"\n");

}


}
class myclass implements OnClickListener{
    private int i;
    private Context con;
    mycallback mycallback;
    public myclass(Context con,int i) {
        this.i=i;
        this.con=con;
        if(mycallback==null){
            mycallback=(com.example.myinter.myclass.mycallback) con;
        }
    }
    public interface mycallback{
           void getposition(int i);
    }

    @Override
    public void onClick(View arg0) {
           i++;
                 mycallback.getposition(i); 

    }
}

說明:XML中的佈局就一個按鈕和文本框 ;通過點擊按鈕後將i傳給myclass 構造器中,並實例化我們的接口;最終在activity中我們實現接口,重寫接口的方法;
以上就是接口最基本的使用;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章