objective-c教程-基础3(super和self)

 
super的常见使用
嵌套
- negotiate {
...  return  [ super  negotiate];
}
super 的常见使用
复用
- ( id)init {
if  ( self  = [ super  init]) { ...
}
}
把核心逻辑集中在父类的实现中 ,子类进行一些边缘处理
 
第二眼的self
self在实例方法中 ,
作为一个隐藏变量 ,可以被重新赋值
self
可以当作执行方法的实例本身
类方法往往是用来对本类的实例进行处理 ,而不是对  类对象进行处理
self
然而在类方法中 ,
理的实例对象
代表的是类对象 ,而不是正在处
第二眼的self
错误的例子 :
+ (Rectangle *)rectangleOfColor:(NSColor *) color {
self  = [[Rectangle alloc] init]; // BAD [self setColor:color]; return [self autorelease];
}
第二眼的self
正确的例子 :
+ ( id)rectangleOfColor:(NSColor *)color {
id  newInstance = [[ self  alloc] init]; // EXCELLENT [newInstance setColor:color]; return [newInstance autorelease];
}
构建新的工程 ,定义类来描述面向对象课程练习中的
个系统。每个系统对应一个工程。
建立新的工程 ,定义一些相互继承的类来描述常见交  通工具的分类关系。
 

你可能感兴趣的:(职场,iPhone,iPhone,休闲,Object-C,Object-C)