- 博客(23)
- 收藏
- 关注
原创 OC--@property指令
@property@property是编译器指令@porperty是一个编译器指令在Xocde4.4之前,可以使用@porperty来代替getter/setter方法的声明;也就是说我们只需要写上@porperty就不用写getter/setter方法的声明.编译器只要看到@property,就会在@inteface中,用来自动生成setter和getter的声明;用@property
2015-08-31 22:44:28
732
原创 OC---self关键字的使用
self关键字self不能离开类, 离开类之后没有任何意义;类方法中的self在整个程序运行过程中,一个类有且仅有一个类对象;通过类名调用方法就是给这个类对象发送消息;类方法的self就是这个类对象;在类方法中可以通过self来调用其他的类方法;不能在类方法中去调用对象方法或成员变量,因为对象方法与成员变量都是属于具体的实例对象的。对象方法中的self在整个程序运行过程中,对象可以
2015-08-31 22:40:26
507
原创 OC---description方法
description方法NSLog(@”%@”, objectA);这会自动调用objectA的description方法来输出ObjectA的描述信息.description方法是基类NSObject所带的方法,因为其默认实现是返回类名和对象的内存地址,这样的话,使用NSLog输出OC对象,意义就不是很大,因为我们并不关心对象的内存地址,比较关心的是对象内部的一些成变量的值。因此,会经常重写
2015-08-31 22:37:52
413
原创 实例变量修饰符
实例变量修饰符实例变量有哪些修饰符1.@public (公开的)在有对象的前体下,任何地方都可以直接访问。2.@protected (受保护的)只能在当前类和子类的对象方法中访问;3.@private (私有的)只能在当前类的对象方法中才能直接访问;4.@package (框架级别的)作用域介于私有和公开之间,只要处于同一个框架中相当于@public,在框架外部相当于@private;变量
2015-08-31 22:34:58
828
原创 OC--继承的相关特性
继承的相关特性方法重写在子类中实现与父类中同名的方法,称之为方法重写; 重写以后当给子类发送这个消息的时候,执行的是在子类中重写的那个方法,而不是父类中的方法;如果想在子类中调用被子类重写的父类的方法,可以通过super关键字;[super 父类方法名称];方法重写后,子类对象调用该方法,会直接调用子类中的方法,不会调用父类中的方法.方法重写的使用场景当从父类继承的某个方法不适合子类,
2015-08-31 22:33:06
406
原创 setter-getter方法
setter方法setter方法的作用作为外部接口,用来设置成员变量,可以在方法的实现部分过滤掉一些不合理的值.setter方法的命名规范1.必须是对象方法;2.返回值类型为void;3.方法名必须以set开头,而且后面跟上成员变量名去掉”_”,首字母必须大写;4.必须提供一个参数,参数类型必须与所对应的成员变量的类型一致;5.形参名称和成员变量去掉下划线相同实例:如:成员变量为i
2015-08-31 22:31:13
1218
原创 面向对象的三大特征--封装/继承/多态
什么是封装?封装: 屏蔽内部实现的细节, 仅仅对外提供共有的方法/接口;封装的好处保证数据的安全性;将变化隔离;对传入的数据进行过滤;监听数据的变化;//监听数据的变化@implementation Kline- (void)setMin:(int)min{// 封装还有一个好处: 监听属性的变化 _min = min;// 每次重新设置最小值, 那么就重新计算平均值
2015-08-31 22:26:05
507
原创 C与OC
C与OC的对比1.import 与include的区别:import 与 include 一样,是将右边的文件拷贝到当前 import 的位置.Import 的优点: 会自动防止重复拷贝2.printf和NSLog的区别: NSLog会自动换行; NSLog在输出内容时会附加一些系统信息; NSLog和printf接收的参数不一样.3.OC中的字符串C语言中的字符串不是对象char *n
2015-08-31 22:20:28
404
原创 OC中如何进行多文件开发?
OC中如何进行多文件开发?在工作中,通常把不同的类放到不同的文件中,每个类的声明和实现分开,声明写在.h头文件中,实现写在相应的.m文件中去,类名是什么,文件名就是什么。例如: 假设有两个类,分别是Person类和Dog类,则通常有下面五个文件:(1)Person.h Person类的声明文件(2)Person.m Person类的实现文件(3)Dog.h Dog类的声明文件(4)Dog.
2015-08-31 22:09:56
371
原创 OC---类与对象
类与对象面向对象与面向过程的区别:面向对象是相对面向过程而言面向对象和面向过程都是一种思想面向过程: 强调的是功能行为关注的是解决问题需要哪些步骤面向对象: 将功能封装进对象,强调具备了功能的对象关注的是解决问题需要哪些对象什么是类?类就是用于描述对象的共性特征主要用于描述对象的属性和行为如何声明一个类?1.必须以@interface开头,以@end结尾;2.成员变量的声
2015-08-31 21:58:23
409
原创 指针
指针基本数据类型作为函数的参数是值传递,在函数中修改形参的值不会影响到外面实参的值;void change(int value) // int value = 10;{ value = 55; printf("我被执行了\n");}数组作为函数的参数是地址传递,如果是地址传递在函数中修改形参的值会影响到外面实参的值.void change2(int values[])
2015-08-31 20:43:47
340
原创 运算符/printf/scanf/if
运算符/printf/scanf/if定义标示符,采用”驼峰规范”:例如 void sendMessageWithNumber()实型:10.1//C语言默认是双精度double型数据;10.1f//末尾加f表示单精float型数据;float类型有效位数是7位(不包括小数点);double类型有效位数是15位(不包括小数点);字符常量的特殊情况:’\n’ ……… 在C语言中,系统
2015-08-31 20:36:27
592
原创 Switch
switch(表达式) { case 常量 : 语句; break; case 常量 : 语句; break; ... default :
2015-08-31 20:29:17
456
原创 C语言--字符串
字符串如何定义字符串变量, 由于字符串是同一种类型的数据组成, 并且是有序的\而数组就是用于存储很多同一种类型的有序数据, 所以可以使用数组来保存字符串.注意: 字符串变量和普通的字符数组有一定的区别.C语言规定, 字符串必须以\0结尾(作为字符串的结束符号),所以字符串变量的元素个数比字符数组的元素个数多一个 \0. char str[] = "lnj"; // 字符串变量 l n j \
2015-08-31 20:25:11
456
原创 C语言---算法(选择排序/冒泡排序/折半查找/进制查表法)
算法选择排序 #include <stdio.h> void selectSort(int nums[], int length); void swap(int nums[], int i, int j); void printArray(int nums[], int length); int main()
2015-08-31 20:17:04
739
原创 C语言---数组
数组数组:一组具有相同数据类型的数据的有序的集合在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型; 注意:只能存放一种类型的数据;数组的名词: 数组:一组具有相同数据类型的数据的有序的集合;数组元素:构成数组的数据。数组中的每一个数组元素具有相同的名称,不同的下标,可以作为单个变量使用,所以也称为下标变量;数组的下标:是数组元素
2015-08-31 20:09:01
683
原创 类型说明符
类型说明符类型说明符的作用:说明长度的;(它可以用于修改类型所占用的存储空间的大小);用于说明数据类型, 一般情况下和int配合使用;说明符号位(它可以用于修改符号位是否用于正负数)eg. unsigned; 无符号,取值正数和零 == %u signed; 有符号, 默认就是有符号 , 取值 正数和零以及负数不同类型的说明符可以混合使用 eg. unsigned short s
2015-08-31 19:59:05
14635
原创 C语言--变量的存储
变量的存储只要定义变量,系统就会开辟一块存储空间给我们的变量存储数据, 内存寻址是从大到小;越先定义的变量, 内存地址越大;变量的地址就是所占的存储空间最小的字节地址;注意: 由于内存寻址是从大到小,所以存储数据也是从大到小的存储(先存储二进制的高位, 再存储低位);高位 –> 低位数据9的存放: 9 –>二进制 –>存储(补码)char类型的变量在内存中的存储: char类型
2015-08-31 19:55:28
589
原创 进制
进制C语言中系统默认数值为十进制 默认就是10进制 eg. int num = 12; 在前面加上一个0就代表八进制 eg.int num1 = 014; %d是以十进制的方式输出一个整数 printf(“%d\n”, num1); %o是以八进制的方式输出一个整数 printf(“%o\n”, num); 在数值前面加上0b就代表二进制 int
2015-08-31 19:51:27
649
原创 常用Unix指令
常用Unix指令 pwd 查看当前所在位置 ls 查看当前文件夹内容 cd 移动到指定目录 eg. cd desktop mkdir 创建文件夹 eg. mkdir 学习目录 rmdir 删除文件夹 eg. rmdir 学习目录 cd ../ 返回上一级目录 clear 清空终端 open 打开文件
2015-08-31 19:49:45
484
原创 函数
函数函数的定义格式 定义格式: 返回值类型 函数名称(数据类型 变量名称,...) { 函数体; }如何定义函数1.确定函数名称:须遵守标示符的命名规则(字母/数字/下划线组陈,遵守驼峰规范)2.确定形参(可在形参前加xc,实参前加sc,避免重复)3.确定返回值4.确定返回值类型 例: int getMax(int v1 ,int
2015-08-31 19:48:10
319
原创 位运算符
位运算符& 按位与:一假则假| 按位或:一真则真^按位异或:不同则真 多个数异或的结果和异或的顺序无关;相同整数按位异或结果为0;任何正数异或0,结果不变;任何整数按位异或上另一个整数两次,结果不变;~ 按位取反:<< 左移 a << n 把整数a的二进制位往左边移n位,移出的位丢掉,低位补0, 左移会把原有的数值变大 9 << 1 = 18 9 * 2(1)
2015-08-22 12:02:27
341
原创 欢迎使用优快云-markdown编辑器
进制C语言中系统默认数值为十进制 默认就是10进制 eg. int num = 12; 在前面加上一个0就代表八进制 eg.int num1 = 014; %d是以十进制的方式输出一个整数 printf(“%d\n”, num1); %o是以八进制的方式输出一个整数 printf(“%o\n”, num); 在数值前面加上0b就代表二进制 int
2015-08-22 11:49:22
354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人