OC之OC的类
2015-08-31 00:00
211 查看
比如,定义一个类名为Car的类,类的声明(类的声明通常写在头文件中,即.h文件中,也可直接写在.m文件中):
// NSobject可以让类有创建对象的能力
@interface Car : NSobject
{
//声明对象属性
@public //是成员变量变成共有的,其下所有成员变量都将变成共有的,当然也可以在每个成员变量上都加@public
//【备注】实际开发中成员变量应以下划线”_”开头。
intspeed;//Car的speed属性(成员变量),只可声明,不可赋值。
intwheels;// Car的wheels属性(成员变量),只可声明,不可赋值。
}
//方法(也叫行为):方法名、参数、返回值、(声明、实现),方法不能写在大括号里面,方法定义前必须以减号或加号开头,方法类型要用小括号括住。当方法没有参数时方法名后一定不要加小括号。如果有参数,则可写成-(void) run:(int)num;即增加了一个int类型的参数num,注意小括号只能用来括类型。一个参数就写一个”:“。调用时应为:[p run:10],p为Car的指针。
- (void) run;//空函数,OC中方法实现必须在类的实现中@implementation Car和@end 之间写
@end//不能省略
类的实现(通常写在.m文件中):
@implementation Car
//定义类中的run方法内容
- (void) run
{
NSLog(@”车子跑起来了,时速为%d”,speed);
}
@end//不能省略
int main()
{
/*在OC中,想调用一个,就写上一个中括号[行为执行者行为名称]
利用类来创建对象*/
//执行了Car类的new行为来创建对象,定义了一个指针变量p,p将来指向的是Car类型的对象
Car *p = [Car new];
P -> speed = 4;//给对象的speed属性赋值。
//给p指向的对象发送一条run消息,即调用run方法
[Car new]->speed = 4;//通过匿名对象进行赋值
[p run];
[[Car new] run];//通过匿名对象访问方法
return 0;
}
【备注】C语言语法格式的函数可以写在任何位置
每个类中都有一个isa指针,这个指针用来指向父类。
OC带参数的方法:- (int) run:(int)a :(int)b;第二个冒号前一定要有空格(调用时:[p run:10 :5])。但是实际开发中为了可读性并不这样写。而是将方法写成:- (int)sumwithNum1:(int)num1andNum2:(int)num2;
方法内容可写为:
- (int)sumwithNum1:(int)num1andNum2:(int)num2
{
return num1+num2;
}
调用方法可写为:
[p sumwithNum1:10andNum2:5];//p为方法所在类的指针
版权声明:本文为博主原创文章,未经博主允许不得转载。
// NSobject可以让类有创建对象的能力
@interface Car : NSobject
{
//声明对象属性
@public //是成员变量变成共有的,其下所有成员变量都将变成共有的,当然也可以在每个成员变量上都加@public
//【备注】实际开发中成员变量应以下划线”_”开头。
intspeed;//Car的speed属性(成员变量),只可声明,不可赋值。
intwheels;// Car的wheels属性(成员变量),只可声明,不可赋值。
}
//方法(也叫行为):方法名、参数、返回值、(声明、实现),方法不能写在大括号里面,方法定义前必须以减号或加号开头,方法类型要用小括号括住。当方法没有参数时方法名后一定不要加小括号。如果有参数,则可写成-(void) run:(int)num;即增加了一个int类型的参数num,注意小括号只能用来括类型。一个参数就写一个”:“。调用时应为:[p run:10],p为Car的指针。
- (void) run;//空函数,OC中方法实现必须在类的实现中@implementation Car和@end 之间写
@end//不能省略
类的实现(通常写在.m文件中):
@implementation Car
//定义类中的run方法内容
- (void) run
{
NSLog(@”车子跑起来了,时速为%d”,speed);
}
@end//不能省略
int main()
{
/*在OC中,想调用一个,就写上一个中括号[行为执行者行为名称]
利用类来创建对象*/
//执行了Car类的new行为来创建对象,定义了一个指针变量p,p将来指向的是Car类型的对象
Car *p = [Car new];
P -> speed = 4;//给对象的speed属性赋值。
//给p指向的对象发送一条run消息,即调用run方法
[Car new]->speed = 4;//通过匿名对象进行赋值
[p run];
[[Car new] run];//通过匿名对象访问方法
return 0;
}
【备注】C语言语法格式的函数可以写在任何位置
每个类中都有一个isa指针,这个指针用来指向父类。
OC带参数的方法:- (int) run:(int)a :(int)b;第二个冒号前一定要有空格(调用时:[p run:10 :5])。但是实际开发中为了可读性并不这样写。而是将方法写成:- (int)sumwithNum1:(int)num1andNum2:(int)num2;
方法内容可写为:
- (int)sumwithNum1:(int)num1andNum2:(int)num2
{
return num1+num2;
}
调用方法可写为:
[p sumwithNum1:10andNum2:5];//p为方法所在类的指针
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 一个简单的asp数据库操作类
- C#实现用于操作wav声音文件的类实例
- 在线管理数据库 类
- Lua面向对象之类和继承浅析
- Lua中类的实现原理探讨(Lua中实现类的方法)
- Lua中的类编程代码实例
- C#常用目录文件操作类实例
- c# 类和成员的修饰详细介绍
- C#中实现判断某个类是否实现了某个接口
- C#类的创建与初始化实例解析
- C#基础语法:结构和类区别详解
- 深入c# 类和结构的区别总结详解
- c#结构和类的相关介绍