黑马程序员----便利构造器/代码块
来源:互联网 发布:tcp网络编程linux 编辑:程序博客网 时间:2024/06/05 08:49
-------------培训 学习型博客 请多指教-----------------
直接上代码
Car * car = [[Car alloc] init];alloc是类方法,init是实例方法,Car alloc创建了一个对象,然后调用对象的init方法进行该对象的初始化。
-(id) initWithName : (NSString *) aName
andAge : (int) anAge
{
if(self = [super init]){
name = [aName retain];
age = anAge;
}
}
这里不是判断self与[super init]是否相等,而是判断是否可以成功初始化。而用if判断下,是为了防止self为空的情况
+(id) studentWithName : (NSString *) aName
andAge : (int ) anAge
{
id obj = [[Student alloc] initWithName:aName andAge:anAge];
//设置obj的成员值
[obj autorelease];
return obj;
}
Student *stu1=[Student studentWithName:achao andAge:22];
这个初始化的临时对象不用手动释放,类方法的便利构造器初始化实例变量后不用手动release,然后直接用stu1来调用类的方法来使用被初始化的值
1 void (^myBlock)(NSString *x);//声明一个代码快myBlock
myBlock=^(NSString *x){
NSLog(@"%@",x);
};// 定义代码块
myBlock(@"achao");//使用代码块
}
2 void (^myBlock)(NSString *x)=^(NSString *x){
NSLog(@"%@",x);
};// 定义代码块
myBlock(@"achao");//使用代码块
3 void (^aVoidBlock) () = ^ {
NSLog(@"Message");
};
aVoidBlock();
int (^add)(int x,int y)=^(int x,int y){
return x+y;
};
int result=add(5,6);
NSLog(@"%d",result);
NSMutableArray *array = [NSMutableArray
arrayWithObjects : @"Bcd",@"Abc",@"aCd",@"Ebf",nil];
[array sortUsingComparator:
^NSComparisonResult(id x,id y){
return [x compare: y];
}];
for(id obj in array){
NSLog(@"%@",obj);
}
0 0
- 黑马程序员----便利构造器/代码块
- 便利构造器/代码块
- 黑马程序员 java中的构造代码块
- 黑马程序员-----java中构造代码块
- 黑马程序员----Java中的构造代码块
- OC总结-便利构造器与初始化方法
- 黑马程序员_构造函数与构造代码块
- 11.黑马程序员-构造函数、构造代码块
- 黑马程序员_对象,构造函数以及构造代码块
- 黑马程序员-构造函数和构造代码块
- 黑马程序员-构造函数和构造代码块
- Swift-指定构造方法和便利构造方法
- 黑马程序员——局部代码块、构造代码块和静态代码块
- 初始化-便利构造器(代码)
- 黑马程序员_静态代码块、构造代码块、构造函数
- 黑马程序员-面向对象(构造函数、构造代码块、静态代码块)
- 黑马程序员-静态代码块、构造代码块、构造函数的区别、
- 黑马程序员_005_构造代码块、构造函数和静态代码块
- Python C++ interoperability
- android smali 笔记
- Git基础 - 查看提交历史,限制输出长度,撤销
- 应用的生命周期
- 军工企业保密工作当前面临的新问题
- 黑马程序员----便利构造器/代码块
- [python] Python Tutorials: Use Case
- Java生成2维码源码
- Android 一键清理、内存清理功能实现
- hash函数的简单介绍
- MDRNN模型
- 搭建ESP8266 CYG_WIN交叉编译环境
- Android基础入门教程——7.6.3 基于TCP协议的Socket通信(2)
- BaseAdapter的使用