A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 该有个目标了 中级黑马   /  2014-8-18 20:46  /  1934 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

基 础 语 法Objective-c是c语言的母集合,就是面向对象的。
1、面向对象和面向过程
面向对象和面向过程是编程的两种思考方式。
面向对象,简称OOP,是完成一项工作需要那些步骤。
面向过程,简称OPP,是完成工作的每一步是怎么完成的,注重过程。
2、类和对象
(1)类是一组具有相同(特征)属性和行为(功能)事物的集合。
     对象就是类的具体实现。世间万物皆对象。
(2)类的定义
在OC中,类的定义分两部分:声明部分和实现部分;
声明部分(@interface):声明了类与父类的名字、方法是实例变量。声明文件以.h为后缀。.h用来声明类的变量和函数。

声明类时,成员变量要声明在大括号中,方法声明在大括号外。
如果是对象方法要写-开头。
类方法要写+开头。
所有在.h文件当中声明的方法都是公共方法,凡是类型,都要写括号。在方法名后,一个参数要一个括号,


实现部分(@implementation):包含了方法的实现,真正意义上定义了类的行为。实现文件以.m为后缀。.m文件负责实现。
实现类时,首先要导入.h的声明
OC中最根本的类叫NSObject,OC是单继承的。声明类以@interface开头,以@end结尾,实现类用@implementation开头,以@end结尾。
注意:一个声明对应一个类。
3、对象的创建和使用
1>对象的创建
内存分配:为对象动态的分配内存地址。
初始化:在内存中初始化成员变量的值。

对象的创建需要调用类的类方法alloc分配内存,调用类方法要写[ ],里面是类名和方法名,返回值需要用指针来接收,也就是说OC中的对象都要写个*。
比如:调用了Student的一个类方法alloc分配内存,并返回了一个指针来接收,其实alloc方法返回的是id类型,万能指针类型:
这与我们后面将要学习的,是构造类型的前身。Student *stu = [Student alloc] init]; 先分配内存空间,然后初始化。就是把new方法 拆分出来。

2>对象的使用其实就是赋值。
赋值必须实例变量的修饰符是@public。实例变量的修饰符还有@protected和@private,系统默认实例变量的类型是@protected,对于这两种类型的实例变量,我们需要调用方法为其赋值或者取值。
4、#import<Foundation/Foundation.h>
预处理指令import的两个作用:一是和include一样,完完全全的拷贝文件的内容;
二是可以自动检验头文件有没有被包含过,防止文件内容的重复拷贝(即使文件被多次包含,也只拷贝一份)。

NSLOG是日志输出,OC字符串以@开头,自动换行,int类型的占位符是@i。
OC中几乎所有关键字以@开头有特殊的。@autoreleasepool与内存管理有关。
5、set方法 和 get方法
1>set方法:给外界提供一个能修改内部成员变量属性的方法。可写不可读。
      写法:是对象方法 - (void)set成员变量名(首字母大写):(参数类型)变量名;变量名与成员变量名不同。
            是类方法:前面用+ 后面一样。
2>get方法:返回值成员变量的属性值。可读不可写。
      写法:对象方法 - (类型与成员变量类型相同)原成员变量名;
            返回值带下划线的成员变量名。
            类方法 + 开头 后面一样。

oc中的小语法:一个参数对应一个冒号,冒号写在参数的前面。冒号也是方法名的一部分。
冒号的作用:分隔方法调用时参数的值,把后面的值传递给前面方法的形参。

7 个回复

倒序浏览
加油!一起努力
回复 使用道具 举报
朱亚男 来自手机 中级黑马 2014-8-19 08:22:28
藤椅
加油!!
回复 使用道具 举报
一步一步来。。。
回复 使用道具 举报
好的 继续 一起去 黑马
回复 使用道具 举报
一起努力。
回复 使用道具 举报
加油吧!!!!!!!!!!!!!!!!!!!!!
回复 使用道具 举报
    总结的不错,学习学习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马