OC的学习
I烟雨云渊T
IT业的菜鸟,正在转型为狂奔的蜗牛。
展开
-
iOS 内存管理和优化
对iOS的浅复制和深复制的深入解释。对内存管理和拓展有独特的描述。对weak的实现原理描写详细。比较详细说明内存的关系。原创 2023-10-13 17:28:31 · 680 阅读 · 0 评论 -
iOS中的浅复制与深复制
/ ARC下不可用NSLog(@"string自身指针的地址:%x", &str);NSLog(@"string指针指向的对象的地址:%p", str);转载 2023-10-09 18:01:23 · 104 阅读 · 0 评论 -
数组的创建和使用1
import原创 2015-08-02 17:13:35 · 255 阅读 · 0 评论 -
不可变字符串的学习
import原创 2015-08-16 16:27:41 · 181 阅读 · 0 评论 -
OC的学习笔记汇总
/*1)面向对象和面向过程的区别 面向过程:是指分析出解决问题所需的步骤,然后用函数把这些步骤一步步实现,使用时一个个调用就可以了 面向对象是:把构成问题的事物分解成一个个对象,然后协调各个对象之间的联系和通信,建立对象的目的不是为了完成一个个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。*/ /*2)类,对象,方法概念(用代码实现) 类:类是具有相同原创 2015-08-17 11:27:36 · 293 阅读 · 0 评论 -
Oc复习
/*ObjC的复习 1)Foundation框架 一.字符串 NSString和NSmutableString 字符串的创建,初始化,以及常用的方法*/ NSString *string = @”我们都是好孩子”; NSString *string1 = [NSString stringWithString:原创 2015-08-17 20:29:55 · 296 阅读 · 0 评论 -
有关提取歌词中字符串的作业
声明部分代码:import import “SongObj.h”@implementation SongObj+(SongObj )songWithContentString:(NSString )string{ SongObj *songObj = [SongObj new]; // [songObj handleWithStringNew:string]; [song原创 2015-08-05 18:42:49 · 327 阅读 · 0 评论 -
有关截取歌词中字符串的作业(用工程实现)
运行部分代码:import “ViewController.h”import “SongObj.h”@interface ViewController (){ NSArray *dataSource; } @property (weak, nonatomic) IBOutlet UITableView *table;@end@implementation ViewController原创 2015-08-05 18:55:04 · 294 阅读 · 0 评论 -
有关模式的课堂笔记
设计模式设计模式是用来解决编程某些特定问题。单例模式什么时候使用单例模式?在一个工程中,有一些类只需要一个实例变量,我们就可以将这些类设计成单例模式单例模式的作用?当一个类A被设计成单例模式时,由A构造出的实例对象之于其它类来讲为全局实例对象,即在每一个类中由A构造出的实例对象,都为相同对象在OC中如何将一个类设计成单例模式?在要被设计成单例的类的.h文件中声明一个构造单例方法,如:+(Stude原创 2015-08-05 18:59:01 · 256 阅读 · 0 评论 -
有关date的学习
import原创 2015-08-02 17:11:09 · 251 阅读 · 0 评论 -
OC初学习的心得
我非常的幸运,我先学了C语言,然后再接触OC,这样就有一个比较学习的过程,我相信我的学习经历和大部分人得一样。C语言跟OC的不同之处在于:C语言是面向过程的语言,而Oc是面向对象的语言,通过比较两者可以更好的学习:C语言有头文件,函数的声明,定义,函数体,和函数返回值;OC同样有这些东西。不过OC的分开为三个文件而已。主文件(main.m),接口文件(interface)和实现文件(impleme原创 2015-07-27 14:53:59 · 450 阅读 · 0 评论 -
多态与继承中的开闭原则和里氏替换原则简述
这两大原则的概念一:开闭原则(Open Closed Principle OCP):对拓展开放,对修改关闭。也就是我们改变一个软件时,应该通过扩展的方式来达到软件的改变,而不应该修改原有的代码来实现变化。里氏替换原则(Liskov Substitution Principle LSP):任何基类可以出现的地方子类一定可以出现。LSP是继承修复的及时,只有当衍生类可以替换基类,软件的功能不受影响是,基原创 2015-07-27 20:06:01 · 1131 阅读 · 0 评论 -
多态的预习
在第四章中,我们将进行继承和多态的学习。继承的概念已经在上一章的博客中详细的阐述过,现在就不再赘言。而多态的概念,简单来说,多态就是对于不同的对象响应同一个方法做出的不同反应。举一个简单的例子:猫和狗都要吃东西,但是两种动物吃得东西却不一样。使用多态把程序写出来,头文件的代码如下:#import <Foundation/Foundation.h>@interface Cat : NSObjec原创 2015-07-27 19:52:36 · 313 阅读 · 0 评论 -
OC中对象的初始化
在OC接下来的学习中我们会学习到对象的初始化。在对象初始化之前,也就是一个新对象被创建的时候,首先要在内存上分配空间,然后按照类中定义的实例变量的结构建造这块内存,alloc方法就是用于以上用途,它从NSObject继承而来的类方法,alloc方法顺便将这块建造好的内存中得实例变量初始化,整形的初始化为0,浮点型的初始化为0.0,字符型初始化为‘\0',BOOL类型初始化为NO,指针型初始化为nil原创 2015-07-27 15:35:39 · 561 阅读 · 0 评论 -
有关复合的学习
在此之前呢,我们学习了OC的继承,了解继承的概念和使用继承的作用,在OC当中,不仅仅有继承可以避免代码冗余,还有一个方法同样可以做到,那就是复合。所谓的复合:就是将多个组件组合到了一起,形成一个整体,然后使用整体进行工作。这种组合的行为称为复合。我可以举一个简单的例子加深理解。我们要组装一辆汽车。那么首先要定义一个汽车类。汽车是由引擎,车轮组成的,所以我们又要定义引擎类,还有车轮类。把他们组装起来原创 2015-07-28 19:09:09 · 400 阅读 · 0 评论 -
OC中的文件管理
/* iOS文件系统 当第一次启动app时,iOS操作系统就为此APP创建了一个文件系统,该文件系统下默认有四个目录,分别是: Documents:存储用户在操作app时产生的数据,此目录下的数据可以通过iCloud进行同步 Library:用户偏好设置数据,通常和此类NSUserDefaults搭配使用,此目录下的数据可以通过iCloud进行同原创 2015-08-11 19:19:54 · 434 阅读 · 0 评论 -
微博的开发
import “ViewController.h”import “WeiboInfoModel.h”@interface ViewController (){ NSMutableData *mdata;NSURLConnection *getAsyncCon;NSURLConnection *postAsyncCon;} @property (weak, nonatomic) IBO原创 2015-08-13 18:48:03 · 290 阅读 · 0 评论 -
图片下载的作业
Downd的接口文件:import define ImgsDirectory @”Imgs”define DocumentsPath [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]//枚举的作用是方便程序的可读性 //结构体的枚举 typedef e原创 2015-08-13 18:46:36 · 274 阅读 · 0 评论 -
数组的创建和使用2
import原创 2015-08-02 17:12:32 · 242 阅读 · 0 评论 -
字典的创建和使用
import原创 2015-08-02 17:08:35 · 344 阅读 · 0 评论 -
#面向对象的三大基本特征
封装定义:封装,即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员 属性封装了实例变量 方法封装了具体实现的代码 类封装了属性和方法继承为什么要继承 在开发过程中,我们会发现很多的代码冗余,即很多的代码相同,特别是在创翻译 2015-07-27 17:43:40 · 304 阅读 · 0 评论