iOS之09-特有语法】的更多相关文章

1:分类的使用场景:想对一个类,扩充一些功能,而又不改变原来类的模型,也不用继承,这时OC中的特有语法:分类可以做到: 当然分类也是一个类,也需要声明和实现,声明在.h文件中,实现在.m文件中,格式如下 // 声明 @interface  类名  (分类名称) @end // 实现 @implementation 类名 (分类名称) @end 2:分类的好处,当一个类比较庞大时,不同的部分可以放到不同的分类中,也方便团队中类的开发: 3:分类使用注意: a:分类不能增加成员变量,只能对原类增加方…
1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法.这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的.例如: 在TC下:struct my{ char ch; int a;} sizeof(int)=2;sizeof(my)=3;(紧凑模式) 在GCC下:struct my{ char ch; in…
一. 分类-Category 1. 基本用途:Category  分类是OC特有的语言,依赖于类. ➢ 如何在不改变原来类模型的前提下,给类扩充一些方法?有2种方式 ● 继承 ● 分类(Category) 2. 格式 ➢ 分类的声明 @interface 类名 (分类名称) // 方法声明 @end ➢ 分类的实现 @implementation 类名 (分类名称) // 方法实现 @end 3. 好处 ➢ 一个庞大的类可以分模块开发 ➢ 一个庞大的类可以由多个人来编写,更有利于团队合作 ➢ …
iOS入门:http://www.jonathanhui.com/ios ObjC语法: http://www.jonathanhui.com/objective-c https://github.com/carlbrown/PDKeychainBindingsControllerhttps://github.com/ldandersen/scifihifi-iphone…
1.点语法 点语法( . )的本质还是方法调用, java中的点是访问成员变量, 在OC中直接访问成员变量的方式只有 -> p.age = ; // [p setAge:10] int a = p.age; // [p age] 点语法造成的死循环 // age的setter和getter方法 - (void)setAge:(int)age { // 会引发死循环 // self.age = age; // [self setAge:age] } - (int)age { // 会引发死循环 /…
视频iOS是本人通过视频学习,初期并不是直接使用Xcode,而是在命令行下创建文件.打开文件.编译文件和运行文件. #import <Foundation/Foundation.h> int main() { NSLog(@"Hello,World!"); ; } 1.#import的用途      1> 跟#include一样,拷贝文件的内容      2> 可以自动防止文件的内容被重复拷贝   2.#import <Foundation/NSObjCR…
在XML的读写中,我们知道有Xpath的语法 1.定位节点:(/)代表绝对的路径,代表起始地位置.(//)表示文件中所有符合模式的元素都会被选出来,即使是处于树中不同的层级也会被选出来 2.KissXMl通过XPath查找出符合条件的元素…
本文转载Keefo. Objective-C的Object-oriented programming特性提供subclass和category这2个比较非常重要的部分.subclass应该反复被各种编程书籍介绍过.它是oop继承特性的关键语法,它给类添加了延续并且多样化自己的方法.可以说没有继承就没有oop这玩意.而category相对于subclass就不那么出名了.其实category思想出世于smalltalk,所以它不能算是一个新生事物.  先说一下这2个特性最主要的区别.简单可以这么理…
分类 问题 1.什么是分类? 就是把一个类的功能,分出一部分来放在一个独立的文件中 2.分类的语法是什么样的? @interface Person(SuperMan) 3.分类与类是什么关系? 分类依赖类而存在,没有类也就没有分类 4.分类有什么作用? 用于把一个比较庞大的类,分割开来,具有相同功能的方法放到一个分类中 把太多的功能封装到一个类中,导致类文件过于庞大 5.分类中能够像类一样声明成员变量? 不能,分类中不能够定义成员变量 1>.难以维护 2>.难以使用 6.分类中能否访问原类中的…
首先要导入libsqlite3.dylib并且加入头文件#import <sqlite3.h>,在进行增删改查之前还要先把数据库搞进去. 一种方法是从外面拷贝到程序里:http://www.cnblogs.com/Steak/p/3764395.html 另一种方法就是直接创建表,既然是操纵数据库,那么一定有一个数据库对象,sqlite是C库,所以需要一个C变量: @interface DBHandler () { sqlite3 *db; } 在沙盒Documents文件夹里创建一个数据库文…