
Objective-C
文章平均质量分 76
cc4Java
技术宅
展开
-
Objective-C 通过description方法来打印对象
C++中可以直接打印对象指针,打印的就是该指针指向的虚拟内存地址,Java中通过打印对象可以输出对象的虚拟内存地址,OC中同样可以通过打印对象指针来输出对象的虚拟内存地址,也提供了description方法来控制打印的内容,子类重写父类的description方法即可实现任意的打印效果,用法同Java中重写toString()方法几乎完全一样。//// Goods.h// 04_Des原创 2014-11-09 14:01:09 · 3631 阅读 · 0 评论 -
Objective-C 第一个程序HelloWorld
一直在做cocos2d-x开发,对Android比较熟悉,IOS一知半解,最近准备系统的学习一下IOS,先从OC开始吧,有C/C++, Java的基础学OC应该是比较轻松的,博客作为一个学习笔记记录一下吧。第一个程序,HelloWorld,直接上代码。//// main.m// 01_HelloWorld//// Created by apple on 14-11-8.//原创 2014-11-08 16:41:59 · 2171 阅读 · 0 评论 -
Objective-C 面向对象基础-类
面向对象是一种编程思想,无论是在C++, Java还是OC中都是差不多的,实现了一个简单的Model类, OC中和C++类似,类的声明和实现需要显示的分开,声明在.h中,实现部分则在.m中。声明部分:Goods.h//// Goods.h// 02_OOP//// Created by apple on 14-11-8.// Copyright (c) 2014年 cc.原创 2014-11-08 18:23:48 · 925 阅读 · 0 评论 -
Objective-C 内存管理retain和release
OC使用引用计数来管理内存,每一个继承NSObject的对象,内部都维护了一个引用计数器retainCount,当对象创建时(调用alloc或者new)引用计数器会+1, 手动调用retain()方法可以使引用计数器+1,手动调用release()方法可以使引用计数器-1,当引用计数器为0时,对象会自动调用"析构函数" dealloc()方法来回收资源和释放内存。这样当一个对象被多个地方使用和原创 2014-11-12 13:30:15 · 3128 阅读 · 0 评论 -
Objective-C @property关键字
OC中提供了@property的关键字来声明变量,来简化开发人员手写getters和setters,同时不破坏面向对象的封装性,这样的好处是在一个有很多属性的Model类里,无需再为每一个属性写一套getters和setters,让代码更简洁。下面看代码的示例。//// Goods.h// 07_Property//// Created by apple on 14-11-12.原创 2014-11-12 10:03:44 · 870 阅读 · 0 评论 -
Objective-C 用new来创建对象
OC中提供了除了使用alloc分配内存再使用init来初始化的两段构造方法外,另外也提供了像C++和Java中的new的方式来创建对象,new整合了alloc和init的两次调用,简化了代码。//// main.m// 06_New//// Created by apple on 14-11-11.// Copyright (c) 2014年 cc. All rights r原创 2014-11-11 10:45:16 · 2732 阅读 · 0 评论 -
Objective-C 类属性和方法的访问权限
OC中提供了4种访问权限,@private, @public, @protected这三种和其他的C++, Java是一样的,@package这个访问权限并不是Java里的包访问权限,OC中没有包的概念,这个是框架级的访问权限,在当前的framework的类中视为@protected,在框架以外的类中访问被视为@private。//// Goods.h// 05_Self////原创 2014-11-11 10:13:54 · 4781 阅读 · 0 评论 -
Objective-C 面向对象基础-构造方法
OC中的类使用的是两段的构造方法,这与通常的C++和Java不同,如果想通过构造的方式传递参数,可以重载一个init方法,下面贴代码。//// Goods.h// 04_Description//// Created by apple on 14-11-9.// Copyright (c) 2014年 cc. All rights reserved.//#import原创 2014-11-09 13:47:33 · 907 阅读 · 0 评论 -
Objective-C 使用点语法调用getters和setters
OC中可以使用“点语法”来简化对getters和setters的调用,下面看代码。//// Game.h// 03_Getters&&Setters//// Created by apple on 14-11-8.// Copyright (c) 2014年 cc. All rights reserved.//#import /** * 游戏实体类 */@i原创 2014-11-08 22:35:41 · 1027 阅读 · 0 评论 -
Objective-C 分类Category
OC提供了一种可以在不修改类的源码基础上,扩展类的方法的功能,"分类"Category,这个机制和C#中的扩展方法类似,一般用于在不方便修改类的源码时(如OC系统相关的类库),但有有需求要拓展类的方法,可以使用分类来实现。Java中应该是没有提供相关的机制,但是Java可以通过动态代理来实现AOP,在切入点前后执行代码逻辑,个人认为比OC还要方便。//// Girl.h// 10_原创 2014-12-23 17:17:13 · 875 阅读 · 0 评论