AFAIK, Objective-C has both protected and private methods/variables. You can use both @private and @public to define the scope of variables and methods. Also, you can also use a Class extension to prevent things from being public or even change the readwrite properties of such public variables. (E.g. In your .h…