国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java編程接口回調(diào)一般用法代碼解析

Java編程接口回調(diào)一般用法代碼解析

2021-01-03 15:20mengwei Java教程

本文的主要內(nèi)容是同過實際代碼向大家展示Java編程中接口回調(diào)的一般用法,具有一定參考價值,需要的朋友可以了解下

接口回調(diào)是指:可以把使用某一接口的類創(chuàng)建的對象的引用賦給該接口聲明的接口變量,那么該接口變量就可以調(diào)用被類實現(xiàn)的接口的方法。實際上,當(dāng)接口變量調(diào)用被類實現(xiàn)的接口中的方法時,就是通知相應(yīng)的對象調(diào)用接口的方法,這一過程稱為對象功能的接口回調(diào)。

Java接口回調(diào)一般用法:實現(xiàn)接口實際上和繼承抽象類類似,只不過繼承是在類的層面上操作,接口是在方法和常量集合的層面上操作,接口比抽象類更抽象、更簡潔。可以把實現(xiàn)接口看成繼承特定的一個或多個方法以及一些常量,關(guān)于接口的具體規(guī)則這里不贅述。

為什么要使用接口和抽象類?因為從很多角度講,這樣做符合面向?qū)ο蟮脑O(shè)計思想,比如開閉原則等。

從實際開發(fā)的角度講,Java不支持多繼承,為了彌補這一點,接口的存在就極為重要,和繼承不同,一個類可以實現(xiàn)多個接口。

接口的一大作用是實現(xiàn)回調(diào),回調(diào)分同步回調(diào)和異步回調(diào),區(qū)別是異步回調(diào)使用了多線程技術(shù),當(dāng)回調(diào)中有耗時操作時,就需要使用異步回調(diào)。

以下全部以異步回調(diào)為例。以下以java寫法為例,android同理。

1、一般用法

新建入口類 Main,并新建接口 InterfaceExample

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class Main implements InterfaceExample{
  public static void main(String[] args) {
    System.out.println("------接口使用測試--------");
    InterfaceTest test = new InterfaceTest();
    //調(diào)用InterfaceTest的handleThings方法,并傳遞Main的實例
    test.handleThings(new Main());
    System.out.println("------異步回調(diào)測試--------");
  }
  @Override  //重寫接口方法
  public void sendMessage(String string) {
    System.out.println("接口回調(diào)成功,利用 " + string + " 做一些事");
  }
}
 
//接口也可以寫在一個獨立的.java文件里
interface InterfaceExample {
  void sendMessage(String string);
}

 

下面新建發(fā)起回調(diào)的類InterfaceTest

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class InterfaceTest {
  //注意這里Main實例向上轉(zhuǎn)型,接口變量引用了Main實例
  public void handleThings(InterfaceExample example) {
    new Thread(new Runnable() {
      @Override
      public void run() {
        System.out.println("-----做一些事------");
        try {
          Thread.sleep(3000);
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
        //回調(diào)接口方法
        example.sendMessage("接口傳的參數(shù)");
      }
    }).start();
  }
}

最后運行輸出:

?
1
2
3
4
------接口使用測試--------
------異步回調(diào)測試--------
-----做一些事------
接口回調(diào)成功,利用 接口傳的參數(shù) 做一些事

其中異步的處理也可以在Main中調(diào)用handleThings時進(jìn)行。

2、結(jié)合匿名內(nèi)部類實現(xiàn)接口回調(diào)

第二種方法只需要在第一種的基礎(chǔ)上修改Main類就可以

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class Main {
  public static void main(String[] args) {
    System.out.println("------接口使用測試--------");
    InterfaceTest test = new InterfaceTest();
    //調(diào)用InterfaceTest的handleThings方法,并使用實現(xiàn)了InterfaceExample接口的匿名內(nèi)部類
    //在該匿名內(nèi)部類中重寫接口方法
    test.handleThings(new InterfaceExample() {
      @Override  //重寫接口方法
      public void sendMessage(String string) {
        System.out.println("接口回調(diào)成功,利用 " + string + " 做一些事");
      }
    });
    System.out.println("------異步回調(diào)測試--------");
  }
}
interface InterfaceExample {
  void sendMessage(String string);
}

可以看到,采用匿名內(nèi)部類的方式可以簡化代碼,使程序結(jié)構(gòu)更清晰。所以這種用法很常見,比如android系統(tǒng)提供的view的點擊事件就是采用這種形式進(jìn)行回調(diào)。

輸出是一樣的:

?
1
2
3
4
------接口使用測試--------
------異步回調(diào)測試--------
-----做一些事------
接口回調(diào)成功,利用 接口傳的參數(shù) 做一些事。

        本文關(guān)于Java編程接口回調(diào)一般用法的介紹就到這里,希望對大家有所幫助。

原文鏈接:https://www.2cto.com/kf/201704/620057.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 久久久久久免费毛片精品 | 亚洲欧美一区二区三区情侣bbw | www.麻豆av | 亚洲精品久久久久久动漫 | 亚洲精品综合 | 国产成人欧美一区二区三区的 | 午夜影院 | 精品久久久久久国产 | 亚洲一区二区精品视频 | 亚洲精品第一区在线观看 | 欧美久久久精品 | 中文字幕一区二区三区日韩精品 | 永久免费av片在线观看全网站 | 日韩在线视频一区 | 亚洲一区视频 | 亚洲一区二区免费看 | 久久只有精品 | 国产精品自拍在线观看 | 久久最新 | 日韩无在线 | 午夜色电影 | 亚洲天堂网站 | 日韩欧美在线综合 | 免费无遮挡www小视频 | 日韩成人av电影 | 天天舔日日干 | 国产免费一区二区三区 | 自拍偷拍专区 | av三级在线观看 | 精品日韩一区二区 | 国产精品免费高清 | 自拍偷拍中文字幕 | av在线电影观看 | 国产欧美一区二区视频 | aaa视频网站 | av网站在线播放 | 99热99| 在线日韩一区二区 | 久久久天堂国产精品 | 亚洲成人免费影院 | 四虎影院网 |