iOS 阶段学习第11天笔记(OC基础知识)
iOS学习(OC语言)知识点整理
一、OC基础知识
1)#import 用于导入头文件,预处理阶段加载引用,只加载一次。
2)OC 依赖于Foundation框架下的头文件Foundation.h,此文件必须引用加载。
3)相较于C语言的导入头文件,头文件需要加上条件编译(#ifndef #define #endif):防止头文件被多次包含
4)OC中关键字前面添加@符,字符串前面也需添加@符。
5)@autoreleasepool自动释放池:应用程序执行的语境,好处:应用程序会自动对内存进行管理
6)NSLog是OC中的输出函数,类似于C中printf,区别于printf,可以显示进程信息和时间,会自动换行,
输出显示格式为 NSLog(@"%@人民解放军","中国");//结果:中国人民解放军
7).h 文件中interface声明一个类,后面是类名(:NSOjbect 表示继承父类NSObject)@end表示类声明结束
8)interface 用于声明类 默认是@protected (受保护的成员);@interface中只能写方法的声明(不能写实现)
9).m文件内 @implementation中只能写方法的实现(不能写声明)
10)类的访问级别说明
1、@public 公有的成员,本类的成员方法,和其他的方法都可以访问
2、@protected 保护型的成员,本类和本类的子类的方法可以访问
3、@private 私有的成员,只能被本类的方法访问
4、@package 处于同一个框架中可以访问,介于private和public之间
11)类的命名规范遵循驼峰命名原则。
12)方法的声明,默认的是public方法;声明格式:+/- (返回类型) 方法名:参数
1、-(减号)声明的方法为实例方法,只能通过实例调用,可直接操作成员变量。
2、+(加号)声明的方法为类方法,只能用类名调用,不可直接操作成员变量,需要用self点出成员变量。
3、实例方法可以和类方法同名。
13)类实例化的两种方法
1、使用 alloc、init方法 例如: Person *p=[[Person alloc]init]; alloc表示为对象在堆中开辟一片内存空间;init 表示初始化类对象。
2、使用new关键字,例如: Person *p=[Person new]; 一般不建议使用此方法。
14)set和get方法的使用
1、set方法用于给某个成员变量赋值,一般以set开头,接着变量名,带一个参数,参数类型与成员变量类型相同,没有返回值。
2、get方法用于获取某个成员变量的值,是实例方法,一般与成员变量名相同,(可以不加get在方法前面),没有参数,有返回类型,返回类型与成员变量的类型相同。
15) 带多个参数的方法的使用;+/-(返回类型)标识符:(参数类型)参数名 标签名:(参数类型)参数 名…;第一个参数以后的
参数建议添加标签名,可增强代码 的可读性;不添加即为匿名标签. 例如: -(void)setName:(NSString *)name andAge:(int)age ;
16)实例方法与类方法的区别
1、实例方法之间可以使用self互相调用,类方法不可以。
2、实例方法可以操作成员变量,类方法不可以。
3、类方法调用直接用类名,不需要另外构建实例。
17)self 表示当前对象/类(self在实例方法中指当前对象,在类方法中指当前类);可以访问当前对象的成员变量.
iOS 阶段学习第11天笔记(OC基础知识)的更多相关文章
- iOS 阶段学习第22天笔记(JSON数据格式介绍)
iOS学习(OC语言)知识点整理 一.JSON数据格式 1)概念:json是一种网络数据传输格式,有值/对象:{“A”:1,”B”:”2”…}词典:对象的序列:[,,,,,]数组两种数据类型 2)UR ...
- iOS 阶段学习第25天笔记(iOS沙盒机制介绍)
iOS学习(OC语言)知识点整理 一.iOS沙盒机制介绍 1)概念: 每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用放入文件 系统隔离,ios系统不允许访问 其他应用的应用沙盒 ...
- iOS阶段学习第20天笔记(MRC内存管理)
iOS学习(OC语言)知识点整理 一.OC中的内存管理 1)概念:内存管理的对象为所有继承了NSObject的对象,对基本数据(如:int .float.double...)无效 OC中采用 ...
- iOS阶段学习第19天笔记(协议-Protocol)
iOS学习(OC语言)知识点整理 一.关于协议(Protocol)的介绍 1)概念:协议指多个对象之间协商的一个接口对象,协议提供了一些方法用在协议的实现者和代理者 之间通讯的一种方式 2) ...
- iOS阶段学习第17天笔记(NSFileManager-NSFileHandle-文件操作)
iOS学习(OC语言)知识点整理 一.单例模式 1)单例是一种编程思想,一个设计模式,与语言无关在采用了单例对象的应用程序中,需要单例类自行提供实例化单例对象, 不管实例化单例对象多少次,只有一个对象 ...
- iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)
iOS学习(OC语言)知识点整理 一.OC中的数组 1)数组:也是一个对象,数组中存放的是对象的地址,可以存放任意类型对象的地址,只能是对象不能是具体的数值,数组是有序的, 可以存放重复的元 ...
- iOS阶段学习第14天笔记(NSString与NSMutableString)
iOS学习(OC语言)知识点整理 一.OC字符串的操作 1)OC中字符串分为两种: 1.不可变字符串NSString:不能修改对象内容,但是可以改变对象的指针. 2.可变字符串NSMutableStr ...
- iOS 阶段学习第七天笔记(函数、递归)
iOS学习(C语言)知识点整理笔记 一.函数 1)概念:具有特定功能的代码块的封装 2)函数的定义: 函数类型+函数名(形参列表) 函数类型 函数名(形参类型1 形参名1,形参类型2 形参名2 ...
- iOS阶段学习第四天笔记(循环)
iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ } 两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...
随机推荐
- 学习Scala02 基本类型
scala中有9大基本类型: Byte .Short .Int .Long. Char .String .Float. Double .Boolean 与java的基本类型看起来基本是一致的,但实际上 ...
- 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求
系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求 实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目 实战使 ...
- 基础才是重中之重~Data层如何调用BLL层的方法,如果觉得奇怪请看本文章
回到目录 看似不伦不类 这个题目有点不伦不类,或者说有点伪模式了,不错,确实是这样,我们正确的开发思维是WEB层->BLL层->DATA层,每个层有对它下层的引用,下层不能引用上层,因为这 ...
- [Spring框架]Spring AOP基础入门总结一.
前言:前面已经有两篇文章讲了Spring IOC/DI 以及 使用xml和注解两种方法开发的案例, 下面就来梳理一下Spring的另一核心AOP. 一, 什么是AOP 在软件业,AOP为Aspect ...
- C++中如何定义类和对象?
在C++语言中,对象的类型被称为类,类代表了某一批对象的共性和特征. 类是对象的抽象,而对象是类的具体实例.如同C中的结构体一样,我们要先定义一个结构体,再使用结构体去定义一个变量.同一个结构体可以定 ...
- 使用Depth Texture
使用Depth Textures: 可以将depth信息渲染到一张texture,有些效果的制作会需要scene depth信息,此时depth texture就可以派上用场了. Depth Text ...
- 队列-java代码
public class QueueDemo { private int maxSize; private long[] queueArray; // 队列的头,实际是数组的尾 private int ...
- 2014牡丹江网络赛ZOJPretty Poem(暴力枚举)
/* 将给定的一个字符串分解成ABABA 或者 ABABCAB的形式! 思路:暴力枚举A, B, C串! */ 1 #include<iostream> #include<cstri ...
- poj2513Colored Sticks(无向图的欧拉回路)
/* 题意:将两端涂有颜色的木棒连在一起,并且连接处的颜色相同! 思路:将每一个单词看成一个节点,建立节点之间的无向图!判断是否是欧拉回路或者是欧拉路 并查集判通 + 奇度节点个数等于2或者0 */ ...
- backbone库学习-model
backbone库的结构: http://www.cnblogs.com/nuysoft/archive/2012/03/19/2404274.html 本文所有例子来自于http://blog.cs ...