objective-c中某个类的规格需要两个不同的部分:接口和实现。
.h 头文件。包含类、类型、函数和常量声明。
.m 实现文件,具有此扩展名的文件可以同时包含oc代码和c代码,又是也称为源文件。
.mm 实现文件。具有此类扩展名的文件,出了可以包含oc代码和c代码以外,还可以包含c++代码,仅当时机饮用oc代码中的c++类或功能时,才用此扩展名。
类:具有相同行为和特征成员的集合。
//类名称 父类名称
@interface MyClass : NSObject
{
int count;
id data;
NSString * name;
}//成员变量声明
//方法声明
- (id)iniWithString : (NSString*)aName;
+ (MyClass*)createMyClassWithString:(NSString*)aName;
@end
objective-c中有且仅有一个父类。
类的实现
#import "MyClass.h"
@implementation MyClass
- (id)iniWithString:(NSString *)aName
{
//code goes here
}
+ (MyClass*)createMyClassWithString:(NSString*)aName
{
//code goes here
}
@end
oc里面的方法种类:
实例方法:由类的实例来执行。
类方法:可由类之间之行,不需要对象的实例作为消息的接收者。
- 说明是实例方法。
+ 说明是类方法。
方法声明格式:
- (void)insertObject:(id)anObject atIndex:(NSUInteger) index;
objective-c 创建实例对象
*通过分配并初始化对象来创建对象
为了分配对象,发送alloc消息给该对象的类,来获得该类的一个“原始”的实例。分配对象时,oc运行时会从应用程序的虚拟内存,为对象分配足够的内存,
除分配内存外,运行时在分配期间还做了一点别的事情,例如将所有实例变量设定为零。
分配院士实例后,必须立即对他初始化。初始化将一个对象的初始状态(即它的实例变量和属性)设定为合理的值,然后返回对象,初始化的目的在于返回有
用的对象。
如何修改实例对象的属性:
*添加设置器setter与访问器getter
方法声明中一个冒号后面仅有一个参数
即为自定义封装类中添加存取器(设置器与访问器)
设置器的方法名: 访问器的方法名:
-setName: -getName
-setAge: -getAge
-setGender: -getGender
.h 头文件。包含类、类型、函数和常量声明。
.m 实现文件,具有此扩展名的文件可以同时包含oc代码和c代码,又是也称为源文件。
.mm 实现文件。具有此类扩展名的文件,出了可以包含oc代码和c代码以外,还可以包含c++代码,仅当时机饮用oc代码中的c++类或功能时,才用此扩展名。
类:具有相同行为和特征成员的集合。
//类名称 父类名称
@interface MyClass : NSObject
{
int count;
id data;
NSString * name;
}//成员变量声明
//方法声明
- (id)iniWithString : (NSString*)aName;
+ (MyClass*)createMyClassWithString:(NSString*)aName;
@end
objective-c中有且仅有一个父类。
类的实现
#import "MyClass.h"
@implementation MyClass
- (id)iniWithString:(NSString *)aName
{
//code goes here
}
+ (MyClass*)createMyClassWithString:(NSString*)aName
{
//code goes here
}
@end
oc里面的方法种类:
实例方法:由类的实例来执行。
类方法:可由类之间之行,不需要对象的实例作为消息的接收者。
- 说明是实例方法。
+ 说明是类方法。
方法声明格式:
- (void)insertObject:(id)anObject atIndex:(NSUInteger) index;
objective-c 创建实例对象
*通过分配并初始化对象来创建对象
为了分配对象,发送alloc消息给该对象的类,来获得该类的一个“原始”的实例。分配对象时,oc运行时会从应用程序的虚拟内存,为对象分配足够的内存,
除分配内存外,运行时在分配期间还做了一点别的事情,例如将所有实例变量设定为零。
分配院士实例后,必须立即对他初始化。初始化将一个对象的初始状态(即它的实例变量和属性)设定为合理的值,然后返回对象,初始化的目的在于返回有
用的对象。
如何修改实例对象的属性:
*添加设置器setter与访问器getter
方法声明中一个冒号后面仅有一个参数
即为自定义封装类中添加存取器(设置器与访问器)
设置器的方法名: 访问器的方法名:
-setName: -getName
-setAge: -getAge
-setGender: -getGender
%@是对oc语言中的字符串的引用