Which three statements are true about delegation as an OO design technique? (Choose three.)
A.
It is applied to a system only at compile time.
B.
It is an essential element of the State pattern.
C.
It is an essential element of the Singleton pattern.
D.
It allows you to replace inheritance with composition.
E.
In Java technology, it is always implemented through the use of generics.
F.
It always requires that at least two objects are involved in handling a request.