腾讯视频课程: 第一讲 Objective C的类 连接:http://dwz.cn/zH5G8 java
类的定义编程
Objective-C的类分为两个文件,一个是.h文件一个是.m文件函数
.h文件存放类、函数声明,类声明用关键字@interface @end来声明spa
.m文件存放类的具体实现,类实现使用关键字@implementation @end来实现.net
对象方法和类方法指针
声明和实现一个类的函数,须要使用+或者-来用在函数的开始code
+表示类的方法,至关于java中的静态函数orm
-表示对象方法,对象实例化后才能够调用视频
类声明:
#import <Foundation/Foundation.h>
@interface Student :NSObject{
}对象
@end
类实现:
#import "Student.h"
@implementation Dog
@end
类和对象的关系
通常的在面向对象的编程中有这么一句话:万物皆对象。固然,要在面向对象的编程过程当中作到这一点,须要很丰富的代码编写经验才行。
什么是对象,举个例子,你看到的一我的,一辆车,甚至是车上的一个轮子,轮子上的螺丝均可以当作一个对象,关键是你在编程的过程当中怎么去处理了,最后仍是再来一句,万物皆对象。
什么是类:类就是提取对象中共性内容,对具体的抽象。如,一个班的同窗,咱们就能够提取这个班的同窗的共性的内容成一个学生Student类,这个Student类都有学号、年龄、班级等等。在oc中就是用@interface定义,@Implementation实现的那个玩意,就是一个类。
在oc中对象是经过指针来声明的,如Student *xiaoMing;
oc中对象的建立,使用alloc来建立一个对象,编译器会给xiaoMing对象分配一个可用的内存,在堆内存中。而后须要对对象进行初始化即调用init方法,这样这个对象才可使用,如:Student *xiaoming = [Student alloc]init];
同一个类的每个对象有不一样的实例变量的存储空间。
同一个类的每一个对象共享该类的方法。
初始化方法的实现:
-(id)init
{
self = [super init];
if(self)
{
//init code
}
return self;
}
通常会这么写:
-(id)init
{
if(self = [super init];)
{
//init code
}
return self;
}
self指的是类对象自己,super指的是父类对象子类的初始化方法必须调用父类的指定的初始化方法,经过向super发送相应的消息初始化父类。[self calss];//获取本类的名称[super class];//获取父类的名称