ios之随笔学习日志(一)

static ,类体内的全局变量声明,声明在所有方法之外,该文件中的 任何方法都可以直接访问,其他文件不能访问

private,只能在本类中使用,默认为projected 可以在本类和子类中使用,public在项目的 任何地方都能使用

ios只能单继承,通过协议的方式实现多继承特点

id声明的类型为动态类型,动态绑定:程序只有在运行时才能确定对象调用的实际方法

多态特性:父类的声明指向子类,重写父类方法,父类的声明变量指向子类对象

 

-( BOOL)isKindOfClass:( Class)aClass;   // 对象是否为aclass或其子类成员

-( BOOL)isMemberOfClass:( Class)aClass;  //对象是否为aclass成员

-( BOOL)isSubclassOfClass:( Class)aClass;  //对象是否为aclass的子类

-( BOOL)respondsToSelector:( SEL)aSelector ;  //对象是否响应指定的方法

 

ios 中nslog输出格式:

  %@        对象
  %d, %i   整数
  %u         无符整形
  %f          浮点/双字
   %x, %X  二进制整数
    %o         八进制整数
   %zu       size_t
    %p        指针
    %e        浮点/双字 (科学计算)
   %g        浮点/双字 
    %s        C 字符串
   %.*s     Pascal字符串
   %c        字符
  %C       unichar
   %lld      64位长整数(long long)
  %llu      无符64位长整数
  %Lf       64位双字

实例变量还只是声明内存为空,alloc之后才分配内存创建对象,init后才能使用;
同一个类的每个对象有不同的实例变量的存储空间;
同一个类的每个对象指向不同的内存;
同一个类的不同对象放在栈区,一个对象的不同实力变量放在堆区

局部变量放在栈内存里面,全局变量和初始化数据放在堆里面;

在init方法中,需调用super init方法初始化父类在赋值给本类,为了防止父类在初始化过程中返回的对象不同于原先创建的对象

一个变量都是有两块内存,一个堆内存,一个栈内存,一般都是一个栈内存指向一块堆内存
形参也是局部变量;形参调用后消失内存快

如果两个类互相引用,那么则需要在另外一个类的interface里面 @class,可避免编译错误;

 

 

 

 


 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值