issue 20 : OC 基础 - 类

发表于 2018-09-09   |   分类于 Objectiv-C 课程

笔记

  1. 类是对某个对象的定义,是某种类型的对象变量和方法的原型。
  2. 类是从一些具有相同属性或功能的具体实例,抽象出共有的一些属性的,自定义抽象数据类型。
  3. 一个类有两个文件xxx.hxxx.m,.h 为定义文件,.m 为源码文件。
  4. 类有属性和行为,属性对应成员变量;行为对应成员方法
  5. 类抽象时,一般是名词
  6. 定义行为时的注意点:谁最清楚这个行为,那么该行为就属于谁
  7. 定义类时,需要用 @interface 开头,以 @end 结束,并在 class name 的位置写入类名称
  8. 类的首字母必须大写,类声明中属性必须写在 @interface 和 @end 之间
  9. 类的实现需要以 @implementation 开头,以 @end 结束
  10. 创建一个类时,需要给其发送一个消息:比如 [Student new] ,这样就创建了一个 Student 类。
  11. 通过类型指针保存对象位置。 Student *s = [Student new]
  12. 如果使用一个指针保存了某一个对象的地址,那么就称这个指针为某个类型的对象;
  13. @property 的内容暂时不关注,后续详细了解,参数主要是atomicnonatomicstrongweakassignretaincopy
  14. 对象方法前加-,类方法前加 + ;类方法类似 PHP 中的静态方法,对象方法和 PHP 中的 Public 方法一致。
  15. 对象方法和类方法的区别:方法区别

思考

  1. 接口与实现分离的好处:如果我们操作接口(interface)而不是不具体的类型(class),那么当我们添加新的类型(class)进行程序扩展时,我们原有的代码(操作接口的代码)不需要进行修改。这样就使得程序易于扩展。出处
  2. 之前不熟悉 OC 的语法时,写起来很蛋疼,现在也就还好。

有意思的内容

  1. 为什么 OC 源码文件的后缀是 .m

    1. message 的意思,来源:https://stackoverflow.com/a/652266/3977623
    2. 只是因为 .c 和 .o 已经被用了,来源来源:https://stackoverflow.com/a/652266/3977623
    3. methods 的意思,来源:https://stackoverflow.com/a/652306/3977623

参考链接

源文件

  • Objective-C高级语法知识大纲(2018-07-25).key

发表新评论

© 2019 Powered by Typecho & Theme 豫ICP备15027577号