搞Android用java偏偏要去看iOS的oc代码

最近需要把iOS实现好的功能用android做出来,所以就是copy oc paste java了。理解的肯定不对,跟我一起入坑吧。

这篇文章讲的很清楚,为了更快速的复习,总结如下:

ios的文件分为:.h和.m

.h就是头文件,.m是实现类,我简单的理解是.h中是父类用来定义一堆东西,.m是实现类,做具体的实现。
.h中的方法和变量都是public
.m中的是private

声明变量和方法

@property (nonatomic, copy) NSString *host;// String host //@property 的意思是自带geter/setter

NSMutableArray *accountList;//可变数组 类似于集合

+ (instancetype)shareInstance{ //一般用作单例 +标识static 如果是 - 代表一般方法
     xxxobject = [[xxxobject alloc] init];//new object(); 后边的init方法类似构造方法做初始化
    return xxxobject }

 - (instancetype)init
{
.......初始化......
}    

-(void) HelloWorld:(BOOL)ishelloworld{  
//干点啥  
}
就是
public void helloWorld(bool ishelloworld) {  
//干点啥  
}  

ClassA:ParentA  // ClassA extends ParentA 
ClassA:ParentA<Protocol>   //ClassA extends ParentA implements interface  
ClassA <Protocol>  //ClassA implements interface 

//调用方法 []代表调用方法 如
[self.object method:self.id account:account];
就是
this.object.method(this.id,account);// : 前边的account是参数名 无意义

if(object){} //if(object!=null){}

[self.xxxattr method:self.xxxID Succ:^(NSString *aaaID) {

    }]; //第二个参数相当于java中的监听 C语言也有这个东西

接下来是回调了

instance.callbackSet(new CallBack(){
            @Override
            public void onLoginSuccess(int uid, int fd) {
                super.onLoginSuccess(uid, fd);
                manager.onLoginSuccess(uid);
            }
        });
inst类中有回调onLoginSuccess,实现方法就是右边的代码块
inst.onLoginSuccess = ^(uint32_t uid, int fd){//^代表是block 就是代码块的意思
        if ([manager respondsToSelector:@selector(onLoginSuccess:)]) {
            [manager onLoginSuccess:uid];
        }

//还有这种把方法当参数传递的,对应java中的监听。在一个类中调用,另一个类实现,感觉比java好用呀

  [self.object channelJoin:self.ID Succ:^(NSString *ID) {}] //succ在另外一个类实现,id是参数 
  //另外一个类是这样:
    - (void)method:(NSString *)ID Succ:(onChannelDidJoined)succ//参数
{
    [inst channelJoin:channelID];
    inst.onChannelJoined = ^(NSString* name){
        succ(name);//调用 在另外一个类实现
    };
}  

有时候会见到id 类型 这是一个泛型 可以理解为object\

_xxx 这里的 下划线 可以理解为this.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值