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表达式成立则执行{ }里的语句:双 ...
随机推荐
- 用python实现的百度新歌榜、热歌榜下载器
首先声明,本工具仅仅为学习之用,不涉及版权问题,因为百度音乐里面的歌曲本身是可以下载的,而且现在百度也提供了”百度音乐播放器”,可以通过这个工具进行批量下载. 我当时做这个工具的时候,百度还没有提供” ...
- 自制Unity小游戏TankHero-2D(1)制作主角坦克
自制Unity小游戏TankHero-2D(1)制作主角坦克 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm)这个游戏制作的. ...
- 小计C/C++问题(1)
本文主要记录了以下2个问题: 表达式中,有符号变量和无符号变量的转化问题 C/C++中,main函数执行完以后,还执行了什么语句? 这里简单的说一下我的环境:Win7 32位,Qt creator 5 ...
- ios 滚动视图响应touchesBegin,touchesEnd等方法
能够滚动的控件都不会响应touchesBegin,touchesEnd等方法,这就需要对这个类进行封装 以UITextView为例 1,创建CustomTextView类,继承与UITextView ...
- 移动 Web 触摸与运动解决方案 AlloyTouch 开源啦
传送门 Github地址:https://github.com/AlloyTeam/AlloyTouch 简介 AlloyTouch的本质是运动一个数字,把数字的物理变化映射到你想映射的任何属性上.所 ...
- Atitit jsr规范化分类 attilax总结
Atitit jsr规范化分类 attilax总结 按照技术类别可以分成以下几类:1.Java EE (39 JSRs) --- J2EE平台规范 2.Java SE (42 JSRs) --- J2 ...
- Servlet Filter
Filter : Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应. 主要用于对HttpServletRequest 进行预处理,也可以对Http ...
- Java删除数据库中的数据
1:删除数据库中数据表中的数据同样也是一个非常用的技术,使用executeUpdate()方法执行用来做删除SQL的语句可以删除数据库表中的数据 2:本案例使用Statement接口中的execute ...
- 【WP开发】认清“不透明度”与“可见性”的区别
这两种情况,许多朋友平时都没有注意到: 1.设置Opacity属性的值为0: 2.将Visibility属性设置为Collapsed. 不少人会简单地认为这两种情况是一样的,都是让UI元素看不见. 我 ...
- 接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些要点
不记得上一次写超过20行的matlab程序是什么时候了,大概是2013年吧,那个时候写过2篇文章,实际用到了 一些matlab的内容,超过200行的matlab程序应该要追溯到2011年了,最近为了帮 ...