//再设计一个类的时候,有些方法需要对外公开(接口),有些仅供内部使用. 类的扩展:为类添加新的特征(属性)或者方法 对已知类: 1.直接添加 2.继承(在其子类中添加实例变量和方法) 3.使用extension(对私有方法和私有属性的扩展(未在.h中申明的方法就是私有方法)) //   extension //  一般我们把类的延展直接写在类的.m文件中 //  extension 对私有方法和私有属性的扩展(未在.h中申声的方法) //  对已知类扩充私有方法,选择 Objective -…
在一个Activity用完之后应该将之finish掉,但是,之前在学校里自己摸索着开发时并没有太注意这个问题,因为activity无论是否finish掉对功能的影响貌似都不是那么明显(这是读书时候的观点),因此也就没有仔细考虑过activity合适finish这个问题. 最近在公司的项目里遇到这个问题,于是就总结了一下. 假设我们有三个activity,分别叫做A.B.C 第一种情况: 我们先从A跳转到B再跳转到C,每次跳转完成之后都不finish当前的activity,那么到达C之后,如果我们…
UIEvent:事件,是由硬件捕捉的一个代表用户操作操作设备的对象. 事件分三类:触摸事件.晃动事件.远程控制事件. 触摸事件:用户通过触摸设备屏幕操作对象,.输入数据.支持多点触摸,包含1个到多个触摸点. UIView支持触摸事件(继承了UIResponder),而且支持多点触摸 使用时,需要定义UIView子类,重写触摸相关的方法. 1.刚开始触摸到屏幕的时候触发 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{…
UILabel:标签 继承自UIView ,在UIView基础上扩充了显示文本的功能.(文本框) UILabel的使用步骤 1.创建控件 UILabel *aLabel=[[UILabel alloc]initWithFrame:CGRectMake(10, 100, 300, 100)]; 2.设置属性 (1).设置背景颜色 aLabel.backgroundColor=[UIColor cyanColor]; (2)设置文本 aLabel.text=@"fuck you艹你❤️❤️❤️❤️❤…
NSDate  日期类,继承自NSObject,代表一个时间点 NSDate *date=[NSDate date]; NSLog(@"%@",date);   //格林尼治时间,0时区时间 NSDate *date1=[NSDate dateWithTimeIntervalSinceNow:8*60*60];//现在的时间 NSDate *date2=[NSDate dateWithTimeIntervalSinceNow:-24*60*60];//相对格林昨天的时间 //    参…
block 块语法,可以用block去保存一段代码,或者封装一段代码. block 实际是由c语言实现的,执行效率很高. block 实际借鉴了函数指针的语法. block,在多线程.异步任务,集合遍历,集合排序.动画专场用得多 block (^)(参数类型1 参数名1,参数类型2 参数名2...); 返回值类型  (^)(); 1.没有参数,括号也不能省略 2.参数名可以省略 void(^myBlock1)();   无参数无返回值 void(^myBlock2)(int a,int b);…
继承: 1.单向继承,一个类只能有一个父类,一个父类可以有多个子类. 2.单向继承,基类(根类)是OSObject 3.子类可以继承父类的属性和方法 当父类的方法不满足子类的需求时,子类可以重写父类的方法,重写父类的方法,在子类中不需要再次声明. 1.完全重写 2.部分重写   使用super 建立继承关系之后,子类可以继承父类的: 1.实例变量,@public@protected修饰情况之下 2.公开的方法 一个方法如果在.h中声明了,那么这个方法就是公开的方法,如果没有声明,则是私有的. O…
@public 1.公开的,公共的,可以在类的内部和外部访问. 2.类的内部:实例变量名 3.类的外部:对象->实例变量名 @protected 1.受保护的,只能在本类和子类中可以访问 2.类的内部:实例变量名 3.类的外部:通过设置器setter和访问器getter访问 @private 1.私有的,只能在本类中可以访问 2.类的内部:实例变量名 3.类的外部:通过设置器setter和访问器getter访问 总:@public 在所有文件均可访问.@protected只能在本类和子类中可以访…
Matlab是矩阵语言,如果运算可以用矩阵实现,其运算速度非常快.但若运算中涉及到大量循环,Matlab的速度令人难以忍受的.当必须使用for循环且找不到对应的矩阵运算来等效时,可以将耗时长的函数用C语言实现,并编译成Mex文件,Matlab便可以像调用内建函数一样调用C编写的函数.Mex文件其实是一种动态链接库,旧版本Matlab可以直接调用.dll,新版本要调用.mexw32或.mexw64文件. 编译过程需要C语言编译器,在Matlab中键入mex –setup进行安装与配置. MEX文件…
Mahout 是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合,包括:被称为Taste的分布式协同过滤的实现.分类.聚类等.Mahout最大的优点就是基于hadoop实现,把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能. 一.Mahout安装.配置 1.下载并解压Mahout http://archive.apache.org/dist/mahout/ tar -zxvf mahout-distribution-0.9.tar.…