Objective-C语言是C语言的一个扩展集,许多具备Mac OS X 外观的应用程序都是使用该语言开发的。它以C语言为基础,添加了一些微妙但意义重大的特性。
#import头文件声明,可保证头文件只被包含一次,而不论此命令实际上在那个文件中出现了多少次。
框架是一种聚集在一个单元的部件集合,包含头文件、库、图像、声音文件等。
#import<Foundation/Foundation.h>包含主头文件,就能获得整个集合。Xcode用预编译头文件,在通过#import导入这种文件时,加载速度会非常快。
Objective-C默认继承父类NSObject
我们熟悉了Objective-C的基本工作原理就应该建立我们的第一个项目,输出一句Hello!学过C的应该都知道,我们的输出用的是printf(),同样Objective-C中也可以用,但是我们一般用Nslog(@”Hello!”);这样我们就输出了Hello。Nslog()输出的好处是可以输出时间。
建立了第一个简单的项目后,我们应该继续加深我们对Objective-C语法的认识,我感觉Objective-C是回归C的语言,用法有很多地方跟C相似。
Objective-C同样是有主文件(main)、声明文件(xxx.h)、实现文件(xxx.m)。
先看看我今天的随笔吧,主要是声明实现了系统默认的set、get方法。Objective-C中set、get方法是不用自己写的,只需要调用就行。
/*********xxx.h文件声明文件***************/
// lianxi.h
// day042101
//Created by 程龙 on12-4-21.
//Copyright (c)2012年 __MyCompanyName__. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface lianxi : NSObject
{
int id;
NSString * name;
double salary;
}
@property(nonatomic,assign)int id;
@property(nonatomic,assign)NSString * name;
@property(nonatomic,assign)double salary;
@end
/*************xxx.m文件实现文件**************/
// lianxi.m
// day042101
// Created by 程龙 on 12-4-21.
//Copyright(c) 2012年__MyCompanyName__. All rights reserved.
//
#import "lianxi.h"
@implementation lianxi
@synthesize id;
@synthesize name;
@synthesize salary;
@end
/***********main.m文件主文件 用来测试***************/
// main.m
// day042101
// Created by 程龙 on 12-4-21.
//Copyright(c) 2012年 __MyCompanyName__. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "lianxi.h"
int main (int argc, const char * argv[])
{
@autoreleasepool {
lianxi * l = [[lianxi alloc]init];
[l setId:1];
NSLog(@"ID=%d",[l id]);
[l setName:@"程龙"];
NSLog(@"姓名:%@",[l name]);
l.salary = 100000.1;
NSLog(@"工资:%f",l.salary);
}
return 0;
}