Question: Java programmers commonly use design patterns. Some examples are the **\_**, which helps create instances of a class, the **\_**, which ensures that only one instance of a class can be created; and the **\_**, which allows for a group of algorithms to be interchangeable.

  1. static factory method; singleton; strategy pattern
  2. strategy pattern; static factory method; singleton
  3. creation pattern; singleton; prototype pattern
  4. singleton; strategy pattern; static factory method

Answer: The correct answer of the above question is Option A:static factory method; singleton; strategy pattern