Objetivo C uso de protocolos

Tengo una pregunta de tarea que me confundió, muy mal. A continuación hay una breve explicación de una pregunta.

Imagina que estás desarrollando una aplicación que almacena información de contacto. La libreta de direcciones puede contener muchos tipos de entidades, p. Ser humano, una empresa o cualquier otra cosa que tenga información de contacto.

Ahora, en lugar de verificar explícitamente cada tipo de objeto, escriba un protocolo que declare cómo debe comportarse un objeto y aparecer con éxito en su libreta de direcciones.

Mi comprensión y esfuerzo de responder esta pregunta es,

Cree un protocolo que tenga métodos comunes de cada tipo de información de contacto en@required Etiqueta. Y todos los demás métodos que no son similares en diferentes contactos (como el número de fax tiene asociación con la empresa pero no con la persona ...) en @optional. En tiempo de ejecución, puede verificar si un objeto responde a un método determinado utilizandoselector. Duda Sin embargo, esto nuevamente verifica explícitamente el tipo de objeto indirectamente, ¿estoy en lo cierto?

Mi segundo pensamiento es usar algo comoabstract class en java. Lo que significa que las clases heredadas de la clase abstracta implementan sus propios métodos abstractos. ¿Cómo, como ingenuo desarrollador de iOS, no sé cómo implementar esto? y no estoy seguro de si esto va a resolver mi problema. Me gustaría iluminarme si alguien sabe esto.

Lectura externa realizada hasta ahora, por favor avíseme si la respuesta que estoy buscando está en uno de estos enlaces. Lo volveré a leer para entender y resolver esto :). Gracias

http: //developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocProtocols.html#//apple_ref/doc/uid/TP30001163-CH15-TPXREF14

http: //developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocProtocols.html#//apple_ref/doc/uid/TP30001163-CH15-TPXREF14

http: //developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocProtocols.html#//apple_ref/doc/uid/TP30001163-CH15-TPXREF14