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

Java面向接口編程之命令模式實例詳解

 更新時間:2019年09月25日 11:55:27   作者:cakincqm  
這篇文章主要介紹了Java面向接口編程之命令模式,結合實例形式詳細分析了Java面向接口編程命令模式的定義、使用方法及相關操作注意事項,需要的朋友可以參考下

本文實例講述了Java面向接口編程之命令模式。分享給大家供大家參考,具體如下:

一 點睛

某個方法需要完成某個行為,但這個行為的具體實現無法確定,必須等到執(zhí)行該方法時才可以確定。

例如:假設有個方法需要遍歷某個數組的數組元素,但無法確定在遍歷數組時如何處理這些元素,需要在調用該方法時指定具體的處理行為。

對于這樣一個需求,必須把處理行為作為參數傳入該方法,這個處理行為用編程實現就是一段代碼,可以考慮使用一個Command接口來定義一個方法,用這個方法來封裝處理行為。

二 代碼

1 Command接口

public interface Command
{
  // 接口里定義的process()方法用于封裝“處理行為”
  void process(int[] target);
}

2 PrintCommand類

public class PrintCommand implements Command
{
  public void process(int[] target)
  {
   for (int tmp : target )
   {
     System.out.println("迭代輸出目標數組的元素:" + tmp);
   }
  }
}

3 AddCommand類

public class AddCommand implements Command
{
  public void process(int[] target)
  {
   int sum = 0;
   for (int tmp : target )
   {
     sum += tmp;
   }
   System.out.println("數組元素的總和是:" + sum);
  }
}

4 ProcessArray類

public class ProcessArray
{
  public void process(int[] target , Command cmd)
  {
   cmd.process(target);
  }
}

5 CommandTest類

public class CommandTest {
  public static void main(String[] args)
  {
    ProcessArray pa = new ProcessArray();
    int[] target = {3, -4, 6, 4};
    // 處理數組,具體處理行為取決于匿名內部類
    pa.process(target,new PrintCommand());
    System.out.println("____________________");
    pa.process(target,new AddCommand());
  }
}

三 運行

迭代輸出目標數組的元素:3
迭代輸出目標數組的元素:-4
迭代輸出目標數組的元素:6
迭代輸出目標數組的元素:4
____________________
數組元素的總和是:9

四 類圖

更多java相關內容感興趣的讀者可查看本站專題:《Java面向對象程序設計入門與進階教程》、《Java數據結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設計有所幫助。

相關文章

  • springboot 實現bean手動注入操作

    springboot 實現bean手動注入操作

    這篇文章主要介紹了springboot 實現bean手動注入操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • IDEA運行SpringBoot項目的超詳細步驟截圖

    IDEA運行SpringBoot項目的超詳細步驟截圖

    在當前的開發(fā)中Spring Boot開發(fā)框架已經成為主流,下面這篇文章主要給大家介紹了關于IDEA運行SpringBoot項目的超詳細步驟截圖,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-11-11
  • Java實現鼠標模擬與鍵盤映射

    Java實現鼠標模擬與鍵盤映射

    這篇文章主要為大家詳細介紹了Java實現鼠標模擬與鍵盤映射,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • spring 整合kafka監(jiān)聽消費的配置過程

    spring 整合kafka監(jiān)聽消費的配置過程

    這篇文章主要介紹了spring 整合kafka監(jiān)聽消費的配置過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • SpringBoot ThreadLocal 簡單介紹及使用詳解

    SpringBoot ThreadLocal 簡單介紹及使用詳解

    ThreadLocal 叫做線程變量,意思是 ThreadLocal 中填充的變量屬于當前線程,該變量對其他線程而言是隔離的,也就是說該變量是當前線程獨有的變量,這篇文章主要介紹了SpringBoot ThreadLocal 的詳解,需要的朋友可以參考下
    2024-01-01
  • java工具類實現文件壓縮zip以及解壓縮功能

    java工具類實現文件壓縮zip以及解壓縮功能

    這篇文章主要給大家介紹了關于java工具類實現文件壓縮zip以及解壓縮功能的相關資料,文中主要使用使用的是hutool工具類,Hutool是一個Java工具類庫,由國內的程序員loolly開發(fā),目的是提供一些方便、快捷、實用的工具類和工具方法,需要的朋友可以參考下
    2024-02-02
  • Mybatis懶加載的實現

    Mybatis懶加載的實現

    這篇文章主要介紹了Mybatis懶加載的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • 簡單易懂Java反射的setAccessible()方法

    簡單易懂Java反射的setAccessible()方法

    本文主要介紹了簡單易懂Java反射的setAccessible()方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • 淺談springboot自動配置原理

    淺談springboot自動配置原理

    這篇文章主要介紹了淺談springboot自動配置原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • JavaGUI實現隨機單詞答題游戲

    JavaGUI實現隨機單詞答題游戲

    這篇文章主要為大家詳細介紹了JavaGUI實現隨機單詞答題游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12

最新評論