黑马程序员技术交流社区

标题: Objective-C - OC中类的声明和实现 [打印本页]

作者: 阿泽泽    时间: 2016-5-16 23:42
标题: Objective-C - OC中类的声明和实现
@interface和@implementation的分工
Objective-C <wbr>- <wbr>OC中类的声明和实现

@interface就好像暴露在外面的时钟表面
@implementation就好像隐藏在时钟内部的构造实现

常见错误:
只有类的声明,没有类的实现
漏了@end
@interface和@implementation嵌套
两个类的声明嵌套
成员变量没有写在括号里面
方法的声明写在了大括号里面

语法细节:
成员变量不能在{}中进行初始化,不能被直接拿出去访问
方法不能当做函数一样调用
成员变量/方法不能用static等关键字修饰,别跟C语言混在一起(暂时忽略)
类的实现可用写在main函数的后面,主要在声明后面就行了

OC方法和函数的区别
OC方法只能声明在@interface和@end之间,只能实现在@implementation和@end之间。也就是说OC方法不能独立于类村
C函数不属于类,跟类没有联系,C函数只归定义函数的文件所有
C函数不能访问OC对象的成员
低级错误:方法有声明,但是实现的时候写成了函数

@implementation
没有@interface,只有@implementation,也是能成功定义一个类的
@implementation Car : NSObject
{
    @public
    int wheels;
    int speed;
}
-(void) run
{
    NSLog(@"%i个轮子,%i时速的车子跑起来了", wheels, speed);
}
@end

@imlementation中不能声明和@interface一样的成员变量




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2