定義一個(gè)語言的文法,并創(chuàng)建一個(gè)解釋器去解釋該語言中的句子,這里的“語言”是指使用規(guī)定格式和語法的代碼。
結(jié)構(gòu)圖
角色與理解
定義一個(gè)語言的文法,并創(chuàng)建一個(gè)解釋器去解釋該語言中的句子,這里的“語言”是指使用規(guī)定格式和語法的代碼。
解釋器模式共分為三種角色:
- AbstractExpression(抽象表達(dá)式):終結(jié)符表達(dá)式與非終結(jié)符表達(dá)式的共同父類,聲明了抽象的解釋行為。
- TerminalException(終結(jié)符表達(dá)式):抽象表達(dá)式的子類,包含文法中終結(jié)符的解釋操作。
- NonterminalException(非終結(jié)符表達(dá)式):抽象表達(dá)式的子類,實(shí)現(xiàn)了文法中非終結(jié)符的解釋操作,內(nèi)部包含非終結(jié)符表達(dá)式或者終結(jié)符表達(dá)式。
- Context(環(huán)境類):上下文環(huán)境
終結(jié)符表達(dá)式是“一句話”中包含的所有最終解釋單元,非終結(jié)符表達(dá)式將一組終結(jié)符表達(dá)式連接,完成“一句話”的解釋,非終結(jié)符表達(dá)式將“幾句話”連接,完成一段話的解釋。
核心代碼
- 抽象表達(dá)式
- 具體處理者
- 非中介表達(dá)式
- 處理類
-
處理器
+關(guān)注
關(guān)注
68文章
19885瀏覽量
235070 -
解釋器
+關(guān)注
關(guān)注
0文章
103瀏覽量
6760
發(fā)布評(píng)論請(qǐng)先 登錄
基于入侵行為模式的告警關(guān)聯(lián)
上網(wǎng)行為管理新模式
設(shè)計(jì)模式:備忘錄設(shè)計(jì)模式
設(shè)計(jì)模式:解釋器設(shè)計(jì)模式
設(shè)計(jì)模式:訪問者設(shè)計(jì)模式
設(shè)計(jì)模式行為型:備忘錄模式

設(shè)計(jì)模式行為型:策略模式

設(shè)計(jì)模式行為型:狀態(tài)模式

設(shè)計(jì)模式行為型:觀察者模式

實(shí)踐GoF的23種設(shè)計(jì)模式:解釋器模式

評(píng)論