5 、OC 类的定义和使用
来源:互联网 发布:网络诈骗800元 编辑:程序博客网 时间:2024/05/28 20:19
Objective-C中定义类需要分为2个步骤
1. @interface(接口)部分
2. @implementation(实现)部分
创建OC类会自动创建两个文件,分别是*.h文件和*.m文件,h文件就是定义接口部分,m文件就是实现部分。
一、接口部分
@interface用于声明定义类的接口部分,@end表示定义结束
@interface Person : NSObject{ //成员变量声明} //方法声明@end
紧跟类的花括号用于声明该类的成员变量,花括号后面的用于定义方法。
成员变量:用于描述该类的对象的状态数据,成员变量类型可以是任何OC允许的数据类型,成员变量名需要是一个合法的标识符,OC建议成员变量名以下划线(_)开头。
方法声明:用于描述该类的行为
方法声明语法如下
-/+ (方法返回值类型) 方法名:(形参1类型)形参1名 形参2标签:(形参2类型)形参3名…;
方法类型标识:-或者+,-表示该方法是实例方法,+表示该方法是类方法。
方法返回值类型:如果一个函数没有返回值,则需要用void来声明。
方法签名关键字:OC没有硬性的规定每个形参都需要给定一个形参标签,但是我没在编写方法的时候尽量给形参加一个标签,这是一个良好的编程习惯。
二、实现部分
@implementation用于声明类的实现,@end表示实现结束
#import "Person.h"@implementation Person{ //成员变量声明} //方法定义@end
1.类实现部分可以定义自己的成员变量,成员变量在花括号中声明,声明以后只能在当前类内访问,因此在类实现部分声明变量相当于定义隐藏的成员变量。
2.必须为接口部分的所有方法提供定义,方法定义由方法签名和方法体组成。
3.实现部分也可以自己定义附加的方法,这些方法只能在本类中使用。
三、实例
接口部分:
#import <Foundation/Foundation.h>@interface Person : NSObject{ //变量-实例变量 int _age; char* _name;}//无返回值的实例方法-(void)setName:(char*)name andAge:(int)age;//有返回值的实例方法-(NSString*)getInfo;//类方法+(void)sayHello;@end
实现部分:
#import "Person.h"@implementation Person{ int _height;//这个变量只能在本类中使用}-(void)setName:(char*)name andAge:(int)age{ _name = name; _age = age;}-(NSString*)getInfo{ [self printMessage]; return [NSString stringWithFormat:@"姓名:%s,年龄%d",_name,_age];}//定义了一个只能在本类中使用的方法-(void)printMessage{ NSLog(@"只能在本类中使用的方法");}+(void)sayHello{ NSLog(@"Hello");}@end
四、对象的产生和使用
创建对象的语法为
[[类名 alloc] 初始化方法];
alloc是OC的关键字,负责为该对象分配内存空间,创建对象。另外还需要调用初始化方法为该实例执行初始化,NSObject类中定义了一个默认的初始化方法:init,OC中所有类都直接或者间接的继承NSObject,所以类的初始化可以用默认的init方法。
OC中调用方法的语法格式为:
[调用者 方法名:参数 形参标签:参数值…];
调用者可以是类也可以是对象,OC中规定,实例方法必须用实例来调用,而类方法则必须使用类调用。
//定义Person对象,并赋值 Person* person = [[Person alloc]init]; //调用实例方法 [person setName:"小明" andAge:10]; NSString*str = [person getInfo]; NSLog(@"%@",str); //调用类方法 [Person sayHello];
0 0
- 5 、OC 类的定义和使用
- OC类的定义和使用
- oc中block的定义和使用
- oc002---定义OC的类和创建OC的对象
- 定义OC的类和创建OC的对象
- OC 中类的声明和定义
- OC定义类的和方法
- OC中的数组定义和方法使用
- OC - 类的基本定义与方法的使用
- OC学习(一)类的定义和对象的创建
- 黑马程序员--oc:类的基本定义与使用
- 黑马程序员————OC基础——定义OC的类和创建OC的对象
- OC类和对象-定义类
- OC类的成员变量的定义
- OC语言基础内容 类的定义 第一个OC
- OC学习篇之---类的定义
- OC学习篇之---类的定义
- OC学习篇之---类的定义
- python中的三个读read(),readline()和readlines()
- 不同服务器new Date的输出不同(GMT+800或者CST)
- 奔跑才是人生的节奏
- 联合主键
- Eclipse没有marketplace选项
- 5 、OC 类的定义和使用
- Controller接口控制器详解(7)
- PL/SQL
- akoj-1138-游戏编码
- 深入理解Java虚拟机笔记---判断对象是否存活
- oracle中exp,imp的使用详解
- java 中String,StringBuilder,StringBuffer比较
- FTPClient调用retrieveFileStream导致线程挂起(防火墙问题)
- ZD