设计模式——23解释器模式(Interpreter)

简介: 解释器模式(Interpreter)

23、解释器模式(Interpreter)
解释器模式是我们暂时的最后一讲,一般主要应用在OOP开发中的编译器的开发中,所以适用面比较窄。

Context类是一个上下文环境类,Plus和Minus分别是用来计算的实现,代码如下:

[java] view plaincopy

  1. public interface Expression {
  2. public int interpret(Context context);
  3. }
    [java] view plaincopy
  4. public class Plus implements Expression {
  5. @Override
  6. public int interpret(Context context) {
  7. return context.getNum1()+context.getNum2();
  8. }
  9. }
    [java] view plaincopy
  10. public class Minus implements Expression {
  11. @Override
  12. public int interpret(Context context) {
  13. return context.getNum1()-context.getNum2();
  14. }
  15. }
    [java] view plaincopy
  16. public class Context {
  17. private int num1;
  18. private int num2;
  19. public Context(int num1, int num2) {
  20. this.num1 = num1;
  21. this.num2 = num2;
  22. }
  23. public int getNum1() {
  24. return num1;
  25. }
  26. public void setNum1(int num1) {
  27. this.num1 = num1;
  28. }
  29. public int getNum2() {
  30. return num2;
  31. }
  32. public void setNum2(int num2) {
  33. this.num2 = num2;
  34. }
  35. }
    [java] view plaincopy
  36. public class Test {
  37. public static void main(String[] args) {
  38. // 计算9+2-8的值
  39. int result = new Minus().interpret((new Context(new Plus()
  40. .interpret(new Context(9, 2)), 8)));
  41. System.out.println(result);
  42. }
  43. }
    最后输出正确的结果:3。

基本就这样,解释器模式用来做各种各样的解释器,如正则表达式等的解释器等等!

目录
相关文章
|
3月前
|
设计模式 存储 缓存
Java设计模式 - 解释器模式(24)
Java设计模式 - 解释器模式(24)
|
7月前
|
设计模式 SQL Java
【设计模式】抖音一面:你不知道解释器模式?
【设计模式】抖音一面:你不知道解释器模式?
55 1
|
7月前
|
设计模式 Go
[设计模式 Go实现] 行为型~解释器模式
[设计模式 Go实现] 行为型~解释器模式
|
7月前
|
设计模式 存储 Java
小谈设计模式(28)—解释器模式
小谈设计模式(28)—解释器模式
|
7月前
|
设计模式 存储 Java
23种设计模式,解释器模式的概念优缺点以及JAVA代码举例
【4月更文挑战第7天】解释器模式是一种行为设计模式,它用于定义一个语言的语法表示,并提供一个解释器来处理这种语法。主要用于频繁需要解释执行一组固定语法规则的场景,例如编程语言解释器、规则引擎等。
48 3
|
7月前
|
设计模式 存储 SQL
【设计模式系列笔记】解释器模式
解释器模式(Interpreter Pattern)是一种行为型设计模式,它定义了一种语言的文法,并且建立一个解释器来解释该语言中的句子。在Java中,解释器模式通常用于实现编程语言解释器、正则表达式解释器等。
73 0
|
7月前
|
设计模式
【设计模式】解释器模式
【设计模式】解释器模式
|
7月前
|
设计模式 监控 Java
聊聊Java设计模式-解释器模式
解释器模式(Interpreter Design Pattern)指给定一个“语言”,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。这里所指的“语言”是指使用规定格式和语法的代码。
88 4
聊聊Java设计模式-解释器模式
|
7月前
|
设计模式 Go 开发工具
Golang设计模式——18解释器模式
Golang设计模式——18解释器模式
52 0
Golang设计模式——18解释器模式
|
7月前
|
设计模式 存储 前端开发
【设计模式】之解释器模式
解释器模式是一种用于解释特定语言或规则的表达式的行为设计模式。在前端开发中,解释器模式可以用于处理复杂的逻辑或规则,并将其转化为可执行的代码。它具有灵活性和可扩展性的优点,但也存在复杂性和性能问题的缺点。通过合理地应用解释器模式,可以提高代码的可读性和可维护性,实现更灵活和可扩展的功能。
78 1