HTML:
@protected
If the object is self, a protected field is visible.
If the object is not self, access depends on its class:
· If the object's class is the same as that of the receiver, the field is visible.
· If the object inherits from the receiver's class, the field is not visible. (You can get around this by casting the object to the receiver's class.)
· If the object has any other relation to the receiver's class, the field is not visible.
@private
If the object is self, a private field is visible.
If the object is not self:
· If the object's class is the same as that of the receiver, the field is visible.
· In all other cases, the field is not visible.
--from objective-c pocket reference