▁access ors ▁is ▁one ▁typical ▁use ▁of ▁categories . ▁Another ▁is ▁to ▁use ▁categories ▁to ▁add ▁methods ▁to ▁the ▁base ▁class . ▁However , ▁it ▁is ▁not ▁regarded ▁as ▁good ▁practice ▁to ▁use ▁categories ▁for ▁subclass ▁overrid ing , ▁also ▁known ▁as ▁mon key ▁patch ing . ▁Inform al ▁protocol s ▁are ▁implemented ▁as ▁a ▁category ▁on ▁the ▁base ▁ ▁class . ▁By ▁convention , ▁files ▁containing ▁categories ▁that ▁extend ▁base ▁classes ▁will ▁take ▁the ▁name ▁Base Class + Extension Class . h . ▁▁ ▁Integer . h ▁# ▁import ▁< obj c / Object . h > ▁ ▁@ interface ▁Integer ▁: ▁Object ▁{ ▁ ▁int ▁integer ; ▁} ▁ ▁- ▁( int ) ▁integer ; ▁- ▁( id ) ▁integer : ▁( int ) ▁_ integer ; ▁@ end ▁▁ ▁Integer . m ▁# ▁import ▁" Integer . h " ▁ ▁@ implementation ▁Integer ▁- ▁( int ) ▁integer ▁{ ▁ ▁return ▁integer ; ▁} ▁ ▁- ▁( id ) ▁integer : ▁( int ) ▁_ integer ▁{ ▁ ▁integer ▁= ▁_ integer ; ▁▁ ▁return ▁self ; ▁} ▁@ end ▁▁ ▁Integer + Ar ithmetic . h ▁# ▁import ▁" Integer . h " ▁ ▁@ interface ▁Integer ▁( Ar ithmetic ) ▁- ▁( id ) ▁add : ▁( Integer ▁*) ▁add end ; ▁- ▁( id ) ▁sub : ▁( Integer ▁*) ▁sub tra h end ; ▁@ end ▁▁ ▁Integer + Ar ithmetic . m ▁# ▁import ▁" Integer + Ar ithmetic . h " ▁ ▁@ implementation