亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java設計模式之解釋器模式(Interpreter模式)介紹

 更新時間:2015年03月11日 09:36:14   投稿:junjie  
這篇文章主要介紹了Java設計模式之解釋器模式(Interpreter模式)介紹,Interpreter定義:定義語言的文法,并且建立一個解釋器來解釋該語言中的句子,需要的朋友可以參考下

Interpreter定義:定義語言的文法,并且建立一個解釋器來解釋該語言中的句子。

Interpreter似乎使用面不是很廣,它描述了一個語言解釋器是如何構(gòu)成的,在實際應用中,我們可能很少去構(gòu)造一個語言的文法。我們還是來簡單的了解一下。

首先要建立一個接口,用來描述共同的操作。

復制代碼 代碼如下:

    public interface AbstractExpression {
   void interpret( Context context );
    }

再看看包含解釋器之外的一些全局信息

復制代碼 代碼如下:

public interface Context { }

AbstractExpression的具體實現(xiàn)分兩種:終結(jié)符表達式和非終結(jié)符表達式。
    public class TerminalExpression implements AbstractExpression {
   public void interpret( Context context ) { }
    }

對于文法中沒一條規(guī)則,非終結(jié)符表達式都必須的:
public class NonterminalExpression implements AbstractExpression {
   private AbstractExpression successor;
  
   public void setSuccessor( AbstractExpression successor ) {
     this.successor = successor;
   }

   public AbstractExpression getSuccessor() {
     return successor;
   }

   public void interpret( Context context ) { }
}

相關(guān)文章

  • 客戶端Socket與服務端ServerSocket串聯(lián)實現(xiàn)網(wǎng)絡通信

    客戶端Socket與服務端ServerSocket串聯(lián)實現(xiàn)網(wǎng)絡通信

    這篇文章主要為大家介紹了客戶端Socket與服務端ServerSocket串聯(lián)實現(xiàn)網(wǎng)絡通信的內(nèi)容詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-03-03
  • Spring事務管理中的異?;貪L是什么

    Spring事務管理中的異?;貪L是什么

    Spring中的代碼出現(xiàn)異常時會回滾這是大家都希望的情況,這時候可以用@Transactional這個注解放在你的方法上來進行回滾,這時候有個問題就是事務回滾是不希望你在Controller進行處理,而是在Service層來進行處理
    2023-02-02
  • IDEA JAVA項目熱加載的實現(xiàn)步驟

    IDEA JAVA項目熱加載的實現(xiàn)步驟

    熱加載可以使代碼修改后無須重啟服務器,就可以加載更改的代碼,本文主要介紹了IDEA JAVA項目熱加載的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2023-06-06
  • Spring的@Scheduled 如何動態(tài)更新cron表達式

    Spring的@Scheduled 如何動態(tài)更新cron表達式

    這篇文章主要介紹了Spring的@Scheduled 如何動態(tài)更新cron表達式的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • 使用SpringCache操作Redis緩存數(shù)據(jù)的示例代碼

    使用SpringCache操作Redis緩存數(shù)據(jù)的示例代碼

    SpringCache是一個框架,實現(xiàn)了基于注解的緩存功能,只需要簡單的加一個注解,就能實現(xiàn)緩存功能,本文給大家介紹了如何使用SpringCache操作Redis緩存數(shù)據(jù),文中有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下
    2024-01-01
  • SpringBoot整合Swagger2實例方法

    SpringBoot整合Swagger2實例方法

    在本篇文章里小編給大家整合了關(guān)于SpringBoot整合Swagger2的相關(guān)知識點內(nèi)容,有興趣的朋友們學習下。
    2019-06-06
  • SpringBoot AOP處理請求日志打印功能代碼實例

    SpringBoot AOP處理請求日志打印功能代碼實例

    這篇文章主要介紹了SpringBoot AOP處理請求日志打印功能代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java設計模式之策略模式詳解和示例

    Java設計模式之策略模式詳解和示例

    這篇文章主要介紹了Java設計模式之策略模式詳解和示例,策略模式就是一種行為可能會因為不同的邏輯造成多個算法,比如人吃飯,美國人吃飯用刀叉,中國吃飯用筷子,都是吃飯的行為但是使用的工具(算法)不一樣,需要的朋友可以參考下
    2024-01-01
  • Spring Batch 如何自定義ItemReader

    Spring Batch 如何自定義ItemReader

    這篇文章主要介紹了Spring Batch 如何自定義ItemReader的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Spring?Boot?整合?Fisco?Bcos的案例分析(區(qū)塊鏈)

    Spring?Boot?整合?Fisco?Bcos的案例分析(區(qū)塊鏈)

    本篇文章介紹的?Spring?Boot?整合?Fisco?Bcos的案例,是在阿里云服務器上部署驗證的。大家可根據(jù)自己的電腦環(huán)境,對比該案例進行開發(fā)即可,具體案例代碼跟隨小編一起看看吧
    2022-01-01

最新評論