首页
学习
活动
专区
工具
TVP
发布

菩提树下的杨过

专栏成员
1168
文章
1599537
阅读量
97
订阅数
objective-C 的OOP(上)--类定义、继承及方法调用
上一篇展示了如何用传统的“面向过程编程方法”,实现画“矩形”、“圆”、“椭圆”,这一篇看下如何改用OOP的方法来实现: 因为要用到“颜色”以及“矩形区域”二个枚举,先把他们抽出来单独放在CommDef
菩提树下的杨过
2018-01-22
1.2K0
objective-C 的代码文件组织
上一篇中,所有代码都是放在同一个文件main.h中的,这显然不是一个好的方式,代码多了以后,看着就头大。可以将其进行拆分: 1、将所有枚举、结构的定义单独放在一个文件ShapeDef.h中 //定义“几何形状类型”枚举 typedef enum { kCircle, kRectangle, kOblatesShperoid } ShapeType; //定义“几何形状颜色”枚举 typedef enum { kRedColor, kGreenColor, kBlueColor } Sh
菩提树下的杨过
2018-01-22
6200
objective-C 的Hello World!
// main.m // HelloWorld // Created by jimmy.yang on 11-1-24. // Copyright 2011 __MyCompanyName__. All rights reserved. #import <Foundation/Foundation.h> //定义“几何形状类型”枚举 typedef enum{ kCircle, kRectangle, kOblatesShperoid } ShapeType; //定义“几何形状颜色”
菩提树下的杨过
2018-01-22
5340
objective-C 的OOP(下)-类(static)方法、实例方法、overwrite(覆写)、属性(property)
 先来定义一个Human父类 定义部分: // // Human.h // OOP // // Created by jimmy.yang on 11-2-9. // Copyright 2011 __MyCompanyName__. All rights reserved. // #import <Foundation/Foundation.h> @interface Human : NSObject { BOOL sex; } +(void) toString; -(void) sh
菩提树下的杨过
2018-01-22
7280
objective-C 的内存管理之-引用计数
obj-c本质就是"改进过的c语言",大家都知道c语言是没有垃圾回收(GC)机制的(注:虽然obj-c2.0后来增加了GC功能,但是在iphone上不能用,因此对于iOS平台的程序员来讲,这个几乎没啥用),所以在obj-c中写程序时,对于资源的释放得由开发人员手动处理,相对要费心一些。 引用计数 这是一种古老但有效的内存管理方式。每个对象(特指:类的实例)内部都有一个retainCount的引用计数,对象刚被创建时,retainCount为1,可以手动调用retain方法使retainCount+1,同样也
菩提树下的杨过
2018-01-22
8330
objective-C 的内存管理之-自动释放池(autorelease pool)
如果一个对象的生命周期显而易见,很容易就知道什么时候该new一个对象,什么时候不再需要使用,这种情况下,直接用手动的retain和release来判定其生死足矣。但是有些时候,想知道某个对象在什么时候不再使用并不那么容易。如果下面的代码,看上去非常简单: Sample.h类接口部分 #import < Foundation / Foundation.h > @interface Sample : NSObject { } -(NSString*) toString; @end Sample.m 类实现
菩提树下的杨过
2018-01-22
1K0
objective-C 的内存管理之-实例分析
注:这是《Objective-C基础教程》一书上的实例,但是原书限于篇幅,分析得比较简单,初次阅读看得比较费劲,这里展开详细讨论一下。 场景:有二个类Car和Engine,即“汽车”和“引擎”。 先来看最初的版本: Engine.h #import <Cocoa/Cocoa.h> @interface Engine : NSObject @property int flag; @end // Engine Engine.m #import "Engine.h" @implementation Eng
菩提树下的杨过
2018-01-22
5200
objective-C中如何判断一个类中有没有定义某个方法
C#中可以通过反射分析元数据来解决这个问题,示例代码如下: using System; using System.Reflection; namespace Hello { class Program { static void Main(string[] args) { if (IsMethodDefined(typeof(Utils), "HelloWorld")) { Co
菩提树下的杨过
2018-01-22
1.1K0
objective-C中的序列化(serialize)与反序列化(deserialize)
obj-c中有一类对象:NSArray,NSDictionary,NSString,NSNumber,NSDate,NSData以及它们的可变版本(指NSMutableArray,NSMutableDictionary...这一类) ,都可以方便的将自身的数据以某种格式(比如xml格式)序列化后保存成本地文件。 示例代码:NSArrayTest.h #import <Foundation/Foundation.h> #define FILE_NAME @"/tmp/data.txt" @interface
菩提树下的杨过
2018-01-22
1.9K0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档