试题详情
简答题oc中的协议和java中的接口概念有何不同?
  • OC中的代理有2层含义,官方定义为 formal和informal protocol。前者和Java接口一样。 
    informal protocol中的方法属于设计模式考虑范畴,不是必须实现的,但是如果有实现,就会改变类的属性。 
    其实关于正式协议,类别和非正式协议我很早前学习的时候大致看过,也写在了学习教程里 
    “非正式协议概念其实就是类别的另一种表达方式“这里有一些你可能希望实现的方法,你可以使用他们更好的完成工作”。 
    这个意思是,这些是可选的。比如我门要一个更好的方法,我们就会申明一个这样的类别去实现。然后你在后期可以直接使用这些更好的方法。 这么看,总觉得类别这玩意儿有点像协议的可选协议。” 
    现在来看,其实protocal已经开始对两者都统一和规范起来操作,因为资料中说“非正式协议使用interface修饰“,现在我们看到协议中两个修饰词:“必须实现(@requied)”和“可选实现(@optional)”。
  • 关注下方微信公众号,在线模考后查看

热门试题