Non-designated initialiser inheritance from Objective C classes
Having come across problems when sub-classing UIKit classes and adding immutable variables to them, I made a test project to figure out what was going on. My conclusion is that if: we have an Objective C class, which inherits from another class, with its own designated initialiser (implicit or explicitly annotated) in its initialiser , it calls [self initWithXX] where initWithXX is an init method on the superclass we subclass this class in Swift , adding an immutable property (which obviously must be initialised on instantiation) we implement a single designated initialiser for this Swift