//自定义类对象实现copy需要遵守copy协议(否则程序崩溃),实现必须实现的协议方法,里面的代码就决定了你的copy是深是浅 #import <Foundation/Foundation.h> #import "Student.h" //接口部分 // @interface Student : NSObject//<NSCopying/*copy协议*/,NSCoding/*归档协议*/> // //@property(nonatomic,copy)NSSt…
继承.初始化方法 一.继承 继承的上层:父类  继承的下层:子类 继承是单向的,不能相互继承 继承具有传递性:A继承于B,B继承于C,A具有B和C的特征和行为 子类能继承父类全部的特征和行为(私有变量也继承过来了,只是不能访问) 面向对象提供了继承语法.能大大简化代码,把公共的方法和实例对象写在父类里.子类只需要写自己独有的实例变量和方法即可 继承既能保证类的完整,又能简化代码 继承特点 oc中只允许单继承 没有父类的类称为根类,oc中得根类是NSObject(祖宗) 继承的内容:所有的实例变量…
第一讲 初始类和对象 c语言的超集,允许在oc中使用c语言源代码.编译器兼容c语言程序 具备完善的面向对象特性 包含一个运行时系统 类库丰富 面向对象编程 oop 面向对象语言:c++  java   c# 概念:对象.类.封装.继承.多态等 面向过程:分析解决问题的步骤,实现函数,依次调用 面向对象:分析问题组成的对象,协调对象间的联系和通信,解决问题 面向对象设计具有良好的可扩展性.可重用性 类和对象是面向对象的核心 定义类,创建对象,使用对象 具有相同特征和行为的事物的抽象 对象是类的 实…
前言 从学校毕业进入公司工作已经第3个年头了,回顾这3年的经历,有种迷茫的感觉.在公司我主要是做零售业公司的系统维护,接触的主要是Oracle的Database的东西.但是业务知识和oracle,都没怎么学好.感到虚度光阴的同时,我感觉到了危机感.所以给自己定了一个目标"学好iOS和Oracle Database".为什么学iOS呢?那是因为身为一个苹果迷,非常喜欢苹果的产品,希望拥有自己开发的App.Oracle Database是工作中能经常接触的,希望更上一层楼. 为了记录自己的…
#import <Foundation/Foundation.h> @interface Student : NSObject <NSCopying> // copy代表set方法会release旧对象.copy新对象 // 修改外面的变量,并不会影响到内部的成员变量 // 建议:NSString一般用copy策略,其他对象一般用retain @property (nonatomic, copy) NSString *name; + (id)studentWithName:(NSS…
内存管理高级 一 属性的内部实现原理   assign   retain    copy assign 下的属性内部实现 setter方法 @property(nonatomic,assign)NSString *name; - (void)setName:(NSString *)name{ _name = name; } getter方法 - (NSString *)name { return _name; } retain的setter和getter方法 @property(nonatomi…
初级内存管理 iOS应用程序出现crash(闪退),90%以上是内存问题////其他:数组越界,方法只声明没实现 内存问题体现在两个方面:内存溢出\野指针异常 内存溢出:程序运行超出内存上限 野指针异常:对象空间已经被系统收回,仍然使用指针操作这块内存,代码量越大的程序,越难找出出现野指针的位置 内存管理方式:垃圾回收(gc)     MRC(Manual Reference Count)     ARC(Auto Reference  Count) 垃圾回收:程序员只需要开辟内存空间,不需要⽤…
属性 能在一定程度上简化代码,并且增强实例变量的访问安全性 属性的声明:使用@property声明属性  eg:@property NSSstring *name;相当于@interface中声明了两个方法 - (void)setName:(NSString *)name; - (NSString *)name; 属性的实现:使用@synthesize实现属性 ,eg:@synthesize name = _name; 相当于@implementation 实现了 - (void)setName…
字典,数组 ,集排序 一.字典类 存储以下数据 name:张三; sex:男;age:18 film:风暴; playcount:10000次;price:60元 字典类用于保存具有映射关系(key-value对)的数据 对于“name:张三”来讲,key就是“name”,key对应的value是“张 三” 一个key-value对认为是一个元素(实体),字典是存储key-value对 的容器. //字典里一个key只有一个vlaue, 但是一个value可以有好几个key NSDictiona…
字符串 数组 一.使用苹果帮助文档 学会使⽤用苹果帮助⽂文档是开发者的⼀一项技能 Inherits from 继承⾃自 Conforms to 遵循什么协议 Framework 属于哪个框架 Availability 什么时候可⽤用的 Declared in 声明在什么头文件⾥里 Related documents 相关文档 Sample code ⽰示例代码 快速打开帮助文档 在代码中,将⿏鼠标停留在 类名或者⽅法名上,option+⿏鼠标左键,点击 Reference的超链接进⼊入帮助⽂文档…