java内部类的OC实现方法
2015-09-09 15:22
507 查看
http://blog.sina.com.cn/s/blog_6c0573910100vfri.html
java内部类的OC实现方法 (2011-12-17 11:49:17)转载▼
标签: java内部类 objective-c 实现
在java中会有很多内部类的存在,这个在oc中我个人认为最好的实现方法就是采用delegate方法。
例如在java中有这样两个类
class A {
//class content;
class B{
}
}
像这样的内部类在oc中可以采用delegate方法来实现,具体代码如下:
A.h
@class B
@interface A: NSObject{
B* b;
}
@property (nonatomic,retain) B* b;
@end
A.m
@implementation
@synthesize b;
-(id)init{
if(self = [super self]){
self.b = [[B alloc] initWithDelegate:self];
}
}
@end
B.h
@interface B: NSObject{
A* a;
}
@property (nonatomic,assign) A a;//这里一定要是assign,要是写成retain的话可能会有错误
@end
B.m
@implementation
@synthesize a;
-(id)initWithDelegate:(id)_delegate{
self.a = _delegate;
}
//通过a就可以调用A中属性和方法了
@end
java内部类的OC实现方法 (2011-12-17 11:49:17)转载▼
标签: java内部类 objective-c 实现
在java中会有很多内部类的存在,这个在oc中我个人认为最好的实现方法就是采用delegate方法。
例如在java中有这样两个类
class A {
//class content;
class B{
}
}
像这样的内部类在oc中可以采用delegate方法来实现,具体代码如下:
A.h
@class B
@interface A: NSObject{
B* b;
}
@property (nonatomic,retain) B* b;
@end
A.m
@implementation
@synthesize b;
-(id)init{
if(self = [super self]){
self.b = [[B alloc] initWithDelegate:self];
}
}
@end
B.h
@interface B: NSObject{
A* a;
}
@property (nonatomic,assign) A a;//这里一定要是assign,要是写成retain的话可能会有错误
@end
B.m
@implementation
@synthesize a;
-(id)initWithDelegate:(id)_delegate{
self.a = _delegate;
}
//通过a就可以调用A中属性和方法了
@end
相关文章推荐
- java零基础教程免费学习下载
- java.util.ResourceBundle使用详解
- CoreJava知识点1
- Java JVM(八):Lambda 简介
- Java实现链表结构
- Java中的private、protected、public和default的区别
- spring 连接池配置C3P0的详细配置说明(com.mchange.v2.c3p0.ComboPooledDataSource)
- Spring下quartz调度持久化实战
- Java环境搭建
- 使用Gradle构建Java项目
- "com.android.ide.s.ProcessException:Process 'cand 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe'' finished with non-zero exit value 2"
- Spring MVC hello world annotation example
- 有用但多疑的十大Java编程技术
- 你的java 代码对JIT编译友好吗?
- spring mvc不能将request的值放入实体
- java算法
- spring mvc @InitBinder(前台ajax传过来的json字符串后台无法接收)
- JVM基础 之Java 6 JVM参数选项大全
- CPU 占用过高 (查看Java堆)
- java web服务器cpu占用过高的处理