2 回答
TA贡献1847条经验 获得超7个赞
我的经验法则是:如果您要进行与初始化相关的操作,请始终先调用超类的方法(如果要完全调用它)。这使超类有机会进行以后在方法中可能要依赖的任何设置。如果您要进行与破坏相关的操作,请最后调用超类的方法。这样可以确保在整个方法执行过程中都可以依赖对象的状态。最后,根据具体情况处理其他情况。例如,如果要处理事件,则可能要先处理该事件,并且仅在您选择不处理该事件或以某种方式对其进行了更改并希望将其传递给事件时才调用超类的方法。链。
TA贡献1796条经验 获得超10个赞
假设您有2个班级,一个父母和一个孩子。子级从父级继承。他们有一个叫做greet的方法,该方法返回一个字符串。
父方法如下所示:
码:
-(NSString *)greet {
return @"Hello";
}
我们希望孩子向父母学习。因此,我们用super表示问候,妈妈会打招呼,但也有一些自己的补充。
代码://从父类继承
-(NSString *)greet {
NSString *parentGreeting = [super greet];
return [parentGreeting stringByAppendingString:@", Mommy"]
}
因此,现在父母打招呼“你好”,孩子打招呼“妈妈你好”。稍后,如果我们更改父母的问候,只返回“嗨”,那么这两个课程都会受到影响,您将获得“嗨”和“嗨,妈妈”。
super用于调用超类定义的方法。它用于访问已被子类覆盖的方法,以便该类可以将其自己的代码包装在其父类实现的方法周围。如果您要进行任何继承都非常方便。
- 2 回答
- 0 关注
- 583 浏览
添加回答
举报