OC07_类的扩展
来源:互联网 发布:大数据与中国发展 编辑:程序博客网 时间:2024/06/01 17:59
//
// main.m
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "NSString+StringMethod.h"
#import "Student.h"
#import "Boy.h"
#import "Girl.h"
#import "Man.h"
int main(int argc,constchar * argv[]) {
// NSMutableDictionary *dic=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"1",@"2",@"3",@"4",@"5",@"6", nil];
// [dic setValue:nil forKey:@"2"];
// NSLog(@"%@",dic);
// [dic setObject:nil forKey:@"2"];
// NSLog(@"%@",dic);
////类目
//系统已经写好的类目:按照功能对系统的类方法进行区分
//类目从@interface开始,后面是当前的名字,类名后是分类的功能,到@end结束.
//我们创建的项目,一般是为了把一些系统的类进行功能扩充.
///判断两个时间是否是同一个月
// NSString *str=@"2015-08-24 19:00:00";
// NSString *str2=@"2015-08-24 20:00:00";
// //[str sayHi]; str2就是self str就是传过去的参数,otherdate
// if([str2 isEqualTtwoDate:str]){
// NSLog(@"月份相同");
// }else{NSLog(@"月份不同");}
// NSLog(@"%d",isTrue);
///实现时间的拼接
// NSString *newStr=[str appendTwoDate:str2];
// NSLog(@"%@",newStr);
///判断时间是否在给定范围内(比较天)
// NSString *time1=@"2015-07-24 00:00:00";
// NSString *time2=@"2015-07-28 12:00:00";
// NSString *strTime=@"2015-07-27 10:00:00";
// if ([strTime isInTimeZone:time1
// end:time2]) {
// NSLog(@"在");
// }else{NSLog(@"不在");}
///传过去一个字符串,返回一个事件的对象NSDate类型
// NSString *strr=@"2015-07-28 12:00:00";
// NSDate *date=[strr stringToDate];
// NSLog(@"%@",date);
// NSDate *date1=[NSString stringToDate:strr];
// NSLog(@"%@",date1);
//////////////////////////////////////////////////////////////////////
//第二种类目方法:延展
// Student *stu=[[Student alloc] init];
//stu.stuSex=@"男";
// NSLog(@"%@",stu.stuSex);
////////////////////////////////////////////////////
////创建两个小人
// Boy *yadang=[[Boy alloc] init];
// Girl *xiawa=[[Girl alloc] init];
////5.设置代理人
// xiawa.delegate=yadang;
// //通过调用结婚的方法来执行内部协议
// [xiawa getMarry];
//
// //5.设置新的代理人
// Man *wangliqian=[[Man alloc] init];
// xiawa.delegate=wangliqian;
// [xiawa getMarry];
(1)//////////////////Girl///////////////////////////////
// Girl.h
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import <Foundation/Foundation.h>
//声明一份协议
//@protocol协议的关键词
@protocol Marry <NSObject>//协议名为 Marry
//协议的内容
//协议方法的声明
@required//要求的,,默认是必须实现的方法,
-(void)makeMoney;
@optional//可选择的,,可选择执行的方法..
-(void)cook;
@end
@interface Girl : NSObject
//2.设置代理人的属性
@property(nonatomic ,assign)id<Marry>delegate;
//两个人正式结婚后,协议才正式生效.
-(void)getMarry;
@end
(2)//
// Girl.m
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import "Girl.h"
@implementation Girl
-(void)getMarry{
//3.让代理人去执行协议里的方法
[self.delegatemakeMoney];
}
@end
(1)//////////////////////Boy///////////////////
// Boy.h
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Girl.h"
//4.引完头文件,boy需要签订协议..
@interface Boy : NSObject<Marry>
@end
(2)//
// Boy.m
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import "Boy.h"
@implementation Boy
//6.实现协议方法makeMoney
-(void)makeMoney{
NSLog(@"买买买");
}
@end
(1)/////////////////////////Man////////////////////////
// Man.h
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import <Foundation/Foundation.h>
//4.签订协议
#import "Girl.h"
@interface Man : NSObject<Marry>
@end
(2)//
// Man.m
// OC07_类的扩展
//
// Created by dllo on 15/7/24.
// Copyright (c) 2015年 flg. All rights reserved.
//
#import "Man.h"
@implementation Man
-(void)makeMoney{
NSLog(@"随便花");
}
@end
- OC07_类的扩展
- OC07_数组NSArray
- UIView的类扩展,扩展CGRect
- Math类的扩展
- CxSkinButton类的扩展
- 类的扩展
- 类的扩展
- OC 类的扩展
- 07 类的扩展
- OC----类的扩展
- 类的扩展
- UIColor类的扩展
- UI类的扩展
- 类的扩展
- 类的扩展
- C#类的扩展
- 类的扩展
- 类的扩展
- 欢迎使用CSDN-markdown编辑器
- TLD学习(1)-搭建环境
- poj 2337 Catenyms 【欧拉路径】
- 纸上谈兵: 树, 二叉树, 二叉搜索树
- 科莫中文离线地图App上线
- OC07_类的扩展
- BIOS 工作原理
- java多线程学习笔记——yield()、wait()、sleep()等方法
- 内存池
- 在Cocos2d-Lua中使用ProtoBuf(Xcode配置方法)
- TLD相关资源
- HDU 5301 Friends(DFS + 枚举)
- poj 1459 Power Network 网络流 ek算法
- JS中的异常处理方法