广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州什么是Java装饰模式?_北大青鸟IT计算机学校

作者:邓华发布时间:2021-03-29分类:Java技术浏览:1018


导读:什么是Java装饰模式?相信这是每个学习Java的同学都会遇到的问题,下面我们一起来看看惠州北大青鸟老师是怎么回答的。

什么是Java装饰模式?相信这是每个学习Java的同学都会遇到的问题,下面我们一起来看看惠州北大青鸟老师是怎么回答的。

装饰模式在不链接其结构的情况下向现有对象添加新功能。

它是一种结构型模式,因为它充当现有类的包装器。

装饰模式创建一个装饰器类来包装原始类并提供其他功能。

例子

interface Printer {   void print();
}class PaperPrinter implements Printer {
  @Override   public void print() {
     System.out.println("Paper Printer");
  }
}class PlasticPrinter implements Printer {
  @Override   public void print() {
     System.out.println("Plastic Printer");
  }
}abstract class PrinterDecorator implements Printer {   protected Printer decoratedPrinter;   public PrinterDecorator(Printer d){
     this.decoratedPrinter = d;
  }   public void print(){
     decoratedPrinter.print();
  }  
}class Printer3D extends PrinterDecorator {   public Printer3D(Printer decoratedShape) {      super(decoratedShape);    
  }
  @Override   public void print() {
    System.out.println("3D.");
    decoratedPrinter.print();        
  }
}public class Main {   public static void main(String[] args) {
     Printer plasticPrinter = new PlasticPrinter();
     Printer plastic3DPrinter = new Printer3D(new PlasticPrinter());
     Printer paper3DPrinter = new Printer3D(new PaperPrinter());
     plasticPrinter.print();
     plastic3DPrinter.print();
     paper3DPrinter.print();
  }
}

上面的代码生成以下结果。

Plastic Printer

3D

Plastic Printer

3D

Paper Printer

想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

java8.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表