Does calling -init on super use memory as it has to instantiate a new object to call the init method on?
No, because your premise is false. super
, as the receiver of a message, is the same object as self
; it's just a signal to the compiler to use objc_msgSendSuper()
instead of objc_msgSend()
. The former starts method lookup with the superclass, but the instance that runs the method is still the same.
No new instance is created by using the super
keyword.