Command Pattern is a Behavioral Design Pattern. Command Pattern encapsulates any request to perform the task into a specific object. These objects later can be used to store them in Queue or Stack as needed by the application. It also enhance the flexibility as client will not bother which command is performed and how they are performed. A single command can be configured to do multiple things that are related to each other.