Qual é a diferença entre #import e @class e quando devo usar um sobre o outro?

Eu tenho me ensinado a Objective-C ao longo do mês passado (eu sou Java) e tenho meu cérebro em volta dele agora. Uma coisa que está me confundindo no momento: qual é a diferença entre importar uma classe via @class e fazer uma #import?

Um é melhor que outro ou preciso usar um em vez do outro em certos casos? Eu tenho usado apenas #import até agora.

questionAnswers(3)

yourAnswerToTheQuestion