objective c php,Objective-C 基础知识

Objective-C 简介

在iOS的开发中使用的是Objective C语言,它是一种面向对象的语言,因而对于已经掌握面向对象语言知识的编程者来说是非常简单的。

接口和实现

在Objective里完成的文件被称为界面文件,该类文件的定义被称为实现文件。

一个简单的界面文件MyClass.h将如图所示:@interface MyClass:NSObject{ // 类变量声明}// 类属性声明// 类方法和声明@end

执行MyClass.m文件,如下所示@implementation MyClass// 类方法定义@end

创建对象

完成创建对象,如下所示MyClass  *objectName = [[MyClass alloc]init] ;

方法(methods)

Objective C中声明的方法如下所示:-(returnType)methodName:(typeName) variable1 :(typeName)variable2;

下面显示了一个示例:-(void)calculateAreaForRectangleWithLength:(CGfloat)length

andBreadth:(CGfloat)breadth;

你可能会想什么是andBreadth字符串,其实它的可选字符串可以帮助我们阅读和理解方法,尤其是当方法被调用的时候。

在同一类中调用此方法,我们使用下面的语句。[self calculateAreaForRectangleWithLength:30 andBreadth:20];

正如上文所说的andBreath使用有助于我们理解breath是20。Self用来指定它是一个类的方法。类方法(class methods)

直接而无需创建的对象,可以访问类方法。他们没有任何变量和它关联的对象。示例如下:+(void)simpleClassMethod;

它可以通过使用类名(假设作为MyClass类名称)访问,如下所示:[MyClass simpleClassMethod];实例方法

可以创建的类的对象后只访问实例方法,内存分配到的实例变量。实例方法如下所示:-(void)simpleInstanceMethod;

创建类的对象后,它可以访问它。如下所示:MyClass  *objectName = [[MyClass alloc]init] ;[objectName simpleInstanceMethod];

Objective C的重要数据类型序号数据类型

1NSString字符串

2CGfloat 浮点值的基本类型

3NSInteger 整型

4BOOL 布尔型

打印日志

NSLog用于打印一份声明,它将打印在设备日志和调试版本的控制台和分别调试模式上。

如 NSlog(@"");

控制结构

除了几个增补的条款外,大多数的控制结构与C以及C++相同

属性(properties)

用于访问类的外部类的变量属性

比如:@property(非原子、强)NSString*myString

访问属性

可以使用点运算符访问属性,若要访问上一属性可以执行以下操作self.myString = @"Test";

还可以使用set的方法,如下所示:[self setMyString:@"Test"];

类别(categories)

类用于将方法添加到现有类。通过这种方法可以将方法添加到类,甚至不用执行文件,就可以在其中定义实际的类。MyClass的样本类别,如下所示:@interface MyClass(customAdditions)- (void)sampleCategoryMethod;@end@implementation MyClass(categoryAdditions)-(void)sampleCategoryMethod{   NSLog(@"Just a test category");}

数组(arrays)

NSMutable和NSArray 是ObjectiveC中使用的数组类,前者是可变数组,后者是不可变数组。如下:NSMutableArray *aMutableArray = [[NSMutableArray alloc]init];[anArray addObject:@"firstobject"];NSArray *aImmutableArray = [[NSArray alloc]initWithObjects:@"firstObject",nil];

词典

NSMutableDictionary和NSDictionary是Objective中使用的字典,前者可变词典,后者不可变词典,如下所示:NSMutableDictionary*aMutableDictionary = [[NSMutableArray alloc]init];[aMutableDictionary setObject:@"firstobject" forKey:@"aKey"];NSDictionary*aImmutableDictionary= [[NSDictionary alloc]initWithObjects:[NSArray arrayWithObjects:@"firstObject",nil] forKeys:[ NSArray arrayWithObjects:@"aKey"]];

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值