iOS的常见问题---Object-C有私有方法吗?私有变量呢?多重继承?

问题:Object-C有私有方法吗?私有变量呢?多重继承?

①objective-c – 类里面的方法只有两种, 静态方法和实例方法.
在Objective‐C中,所有实例变量默认都是私有的,所有实例方法默认都是公有的

②这似乎就不是完整的面向对象了,按照OO的原则就是一个对象只暴露有用的东西. 如果没有了私有方法的话, 对于一些小范围的代码重用就不那么顺手了. 在类里面是可以声名一个私有方法的,即延展。

③即OC中有私有变量:private修饰。OC中没有设计私有的方法。通过延展在实现文件里面定义方法作为私有的方法。但是这不是真正意义上的私有方法。(注意类目和延展的区别)

④无多继承:所有类都是NSObject的子类,通过protocol委托代理来实现多继承的效果(协议定义的方法不一定都要实现,@required下的方法必须实现,而java中的接口方法必须都要实现,这点上还是有区别的)

⑤代码示例:
@interface Controller : NSObject { NSString *something; }

  • (void)thisIsAStaticMethod;

– (void)thisIsAnInstanceMethod;

@end

@interface Controller (private) -

(void)thisIsAPrivateMethod;

@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值