封装是什么?
封装就是包装,只让你看到包装盒,不让你看到盒子里面的秘密.
类,就是类别,比如"老师",对象,就是实体,比如"范美忠老师".它们的关系是抽象概念与具体实例,与"封装"没有任何关系.
第三个命题,在某种程度上,可以认那是对的.虽然箱子很薄很暴露,但毕竟在外边加了一层膜(通常称为"语法糖).但是,这里的封装只是指"包装"而已,和OO术语里的封装不是一个意思,后者是有所专指的(就是把数据和处理这些数据的代码放到一起,然后只向外界提供必要的接口,也就是"类"的概念).
至于第二个,这个连糖都算不上,只是语法规定而已.像你的一个函数需要1,2,3,这样的整数作参数,你会用int这个类型来表示它;而如果需要一段可以执行的代码作参数,就需要用代理来表示.delegate和int是一样的,只是一个类型.