Pergunta de entrevista da empresa Global Payments

What is the difference between a String and Stringbuffer? What is an API?