Назначение
Динамически возлагает на объекты новые функции. Декораторы применяются для расширения имеющейся функциональности и являются гибкой альтернативой порождению подклассов.
Использование шаблона в JDK
(примеры частично взяты с этого ресурса)
java.io.BufferedInputStream(InputStream) java.io.BufferedOutputStream(OutputStream) java.io.BufferedReader(Reader) java.io.BufferedWriter(Writer) java.io.PrintStream(OutputStream) java.io.PrintWriter(Writer) java.util.Collections.checkedList(List, Class) (также checkedCollection, checkedMap, checkedSet, checkedSortedMap, checkedSortedSet) java.util.Collections.synchronizedList(List) (также synchronizedCollection, synchronizedMap, synchronizedSet, synchronizedSortedMap, synchronizedSortedSet) java.util.Collections.unmodifiableList(List) (также unmodifiableCollection, unmodifiableMap, unmodifiableSet, unmodifiableSortedMap, unmodifiableSortedSet) javax.servlet.http.HttpServletRequestWrapper(HttpServletRequest) javax.servlet.http.HttpServletResponseWrapper(HttpServletResponse)
Динамически возлагает на объекты новые функции. Декораторы применяются для расширения имеющейся функциональности и являются гибкой альтернативой порождению подклассов.
Использование шаблона в JDK
(примеры частично взяты с этого ресурса)
java.io.BufferedInputStream(InputStream) java.io.BufferedOutputStream(OutputStream) java.io.BufferedReader(Reader) java.io.BufferedWriter(Writer) java.io.PrintStream(OutputStream) java.io.PrintWriter(Writer) java.util.Collections.checkedList(List, Class) (также checkedCollection, checkedMap, checkedSet, checkedSortedMap, checkedSortedSet) java.util.Collections.synchronizedList(List) (также synchronizedCollection, synchronizedMap, synchronizedSet, synchronizedSortedMap, synchronizedSortedSet) java.util.Collections.unmodifiableList(List) (также unmodifiableCollection, unmodifiableMap, unmodifiableSet, unmodifiableSortedMap, unmodifiableSortedSet) javax.servlet.http.HttpServletRequestWrapper(HttpServletRequest) javax.servlet.http.HttpServletResponseWrapper(HttpServletResponse)