Java IO APIs are typical examples for Decorator pattern.
Decorators are often used when subclassing requires a large number of subclasses to support every possible combination needed – so many that subclassing becomes impractical. The Java IO library requires many different combinations of features which is why the decorator pattern is a good approach.
GE must be General Electric. This is a big American MNC
Then what was the relevance of writing in the original post "This is the question asked in GE"? I thought whatever "GE" is, it may be some radical form of Design Patterns.
According to Wikipedia's disambiguation page Ge or GE may stand for:
* Ge (Cyrillic) ( Г, г ), a letter of the Cyrillic alphabet * Ge with upturn ( Ґ, ґ ), a letter of the Ukrainian alphabet * Gaia (mythology), a short name for * Ge (or Je) - indigenous Brazilian tribes or the Ge languages associated with them * Dagger-axe (ge), a type of ancient Chinese weapon * Germanium (Ge), a chemical element * Georgia (country): ISO 3166-1 alpha-2 country code * Canton of Geneva, Switzerland * Genetic engineering (g.e.) * General Electric (GE) * Nikolai Ge (1831�1894), a Russian painter * Gigabit Ethernet, a networking technology * TransAsia Airways IATA code [ June 12, 2006: Message edited by: Jeff Albertson ]