黑马程序员:OC基本语法
2014-03-26 18:22
302 查看
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
OC基本语法
#import的两个用途
1. 跟#include一样,拷贝文件的内容
2. 可以自动防止文件的内容被拷贝多次
主头文件:最主要的头文件,每个主头文件的名称和其框架名称是一样的
只要包含Fundation 框架的主头文件,就可以使用整个框架的东西
#运行过程
1> 编写OC源文件:.m .c
2> 编译: cc –c XXX.m XXX.c
3> 链接: cc xxx.o xxx.o –framework Foundation
(只有用到了Foundation框架才需要加上–framework Foundation)
4> 运行: ./a.out
#常用术语
1> 面向对象Procedure Oriented
2> 面向对象 ObjectOriented
3> 面对对象编程 ObjectOriented Programing
//因为使用了NSObject
#import <Foundation/Foundation.h>
#完整描述一个函数需要有两个步骤:函数的声明和定义(实现)
#完整描述一个类需要有两个步骤:类的声明和实现
1> 类的声明:用来声明对象的属性、行为(方法)
// : NSObject 目的是:让Car 这个类具有创建对象的能力
@interface Car : NSObject
{ //用来声明对象属性(成员变量:成员变量分配内存时会做初始化,默认情况下值为0)
//@public可以让外部的指针间接访问对象内部的成员变量
@public
int wheels; //轮胎个数
int speed; //时速
}
// 方法(行为):方法名、参数 、返回值(声明、实现)
//只要是OC对象的方法,必须以减号- 开头
//OC方法中任何数据类型都必须用小括号()括住
//OC方法中的小括号就一个作用:括住数据类型
-(void)run;
@end(告诉编译器类的声明到此为止)
2> 类的实现
/*
人
类型:person
属性(行为变量\实例变量):weight 、age
行为(方法):walk 、
*/
//1.类的声明
*成员变量
*方法的声明
#OC方法和函数的区别
*方法
1.对象方法都是以减号-开始
2.对象方法的声明必须写在@interface和@end之间;对象方法的实现必须写在@implementation和@end之间
3.对象方法只能由对象来调用
4.对象方法归类\对象所有
*函数
1.函数能够写在文件的任意位置(@interface和@end之间除外),函数归文件所有
2.函数调用不依赖于对象
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
详情请查看:http://edu.csdn.net/heima
OC基本语法
#import的两个用途
1. 跟#include一样,拷贝文件的内容
2. 可以自动防止文件的内容被拷贝多次
主头文件:最主要的头文件,每个主头文件的名称和其框架名称是一样的
只要包含Fundation 框架的主头文件,就可以使用整个框架的东西
#运行过程
1> 编写OC源文件:.m .c
2> 编译: cc –c XXX.m XXX.c
3> 链接: cc xxx.o xxx.o –framework Foundation
(只有用到了Foundation框架才需要加上–framework Foundation)
4> 运行: ./a.out
#常用术语
1> 面向对象Procedure Oriented
2> 面向对象 ObjectOriented
3> 面对对象编程 ObjectOriented Programing
//因为使用了NSObject
#import <Foundation/Foundation.h>
#完整描述一个函数需要有两个步骤:函数的声明和定义(实现)
#完整描述一个类需要有两个步骤:类的声明和实现
1> 类的声明:用来声明对象的属性、行为(方法)
// : NSObject 目的是:让Car 这个类具有创建对象的能力
@interface Car : NSObject
{ //用来声明对象属性(成员变量:成员变量分配内存时会做初始化,默认情况下值为0)
//@public可以让外部的指针间接访问对象内部的成员变量
@public
int wheels; //轮胎个数
int speed; //时速
}
// 方法(行为):方法名、参数 、返回值(声明、实现)
//只要是OC对象的方法,必须以减号- 开头
//OC方法中任何数据类型都必须用小括号()括住
//OC方法中的小括号就一个作用:括住数据类型
-(void)run;
@end(告诉编译器类的声明到此为止)
2> 类的实现
@implementation Car //方法的实现(说清楚方法里面有声明代码) -(void)run { NSLog(@”车子跑起来了”); } @end int main() { //在OC中,想执行一些行为,就写上一个中括号[行为执行者行为名称] //利用类来创建对象 //执行了Car这个类的new行为来创建对象 //定义了一个指针变量p,p将来指向的是Car类型的对象 //[Car new]会创建出一个新对象,并且会返回新对象本身(新对象的地址) Car *p = [Car new ]; Car *p2 = [Car new]; //给p所指向对象的wheels属性赋值 p->wheels = 4; p->speed = 240; p2->wheels = 5; p2->speed = 300; //给p所指向对象发送一条run消息 [p run] return 0; }
/*
人
类型:person
属性(行为变量\实例变量):weight 、age
行为(方法):walk 、
*/
//1.类的声明
*成员变量
*方法的声明
#import <Foundation/Foundation.h> @interface (person)类名 :NSObject { @public int age; double weight; } 方法声明; - (void) walk; @end //2.类的实现 @implementation (person)类名 //实现@interfac中声明的方法 -(void)walk { NSLog(@”走一段路”) } @end //在使用类创建对象之前,会将类加载进内存,每一个对象内部有一个isa指针指向分装在类里面的方法 int main() { Person *p = [Person new]; p->weight =50.0; p->age =20; [p walk]; return 0;
#OC方法和函数的区别
*方法
1.对象方法都是以减号-开始
2.对象方法的声明必须写在@interface和@end之间;对象方法的实现必须写在@implementation和@end之间
3.对象方法只能由对象来调用
4.对象方法归类\对象所有
*函数
1.函数能够写在文件的任意位置(@interface和@end之间除外),函数归文件所有
2.函数调用不依赖于对象
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
详情请查看:http://edu.csdn.net/heima
相关文章推荐
- 程序员在囧途之招聘历险记 推荐
- 程序员在囧途之火葬场惊魂14天
- 程序员在囧途之火葬场惊魂14天
- 黑马程序员--Java7K破解题---交通灯
- 黑马程序员-7k面试题-交通灯管理系统
- 黑马程序员 7K面试题 交通灯管理 Executor 框架 使用 详解
- 面试题常用易错总结
- 程序员永远的痛之字符编码的奥秘
- 面试笔试题之二叉树经典25题
- Android面试题
- LeetCode 048 Rotate Image
- 一位程序员的爱情表白(娱乐版)
- 面向程序员的数据库访问性能优化法则
- 程序员的迷茫阶段
- 黑马程序员_OC基础14_计算代码行数Demo
- 百度质量部面试体验之 三面
- 程序员的你
- 实习面试总结
- 黑马程序员----字符流,字节流,二进制序列化的使用及区别
- 求职面试中你需要知道的一些事