现在的位置: 首页 > 综合 > 正文

java内部类的oc实现

2017年10月31日 ⁄ 综合 ⁄ 共 516字 ⁄ 字号 评论关闭

 

在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,assignA a;//这里一定要是assign,要是写成retain的话可能会有错误
@end
B.m
@implementation
@synthesize a;
-(id)initWithDelegate:(id)_delegate{
self.a = _delegate;
}
//通过a就可以调用A中属性和方法了
@end

抱歉!评论已关闭.