In order for @properties to work correctly the class must be a subclass of object. when The category is not a subclass of object then the first time you are attempting access the setter it truly makes a whole new attribute with the shorter identify as opposed to accessing through https://godrejprimasouthdelhi.blogspot.com/