【Objective-C 篇】 ☞ 学前准备

基础知识

1. 前言

  Windows系统的可执行文件的格式为: .exe

  Mac 系统的可执行文件的格式可以是任意的

  OC语言是在C语言基础之上进行了加强和扩展, OC语言兼容所有的C语言语法,OC特有的东西一般就用自己的。

2. 系统类前缀

  Cocoa中系统类前缀NS=NEXTSTEP

3. 关键字

  大多数关键字都是以@开头。

  

4. 运行过程

  1. 编写OC源文件:.m.c
  2. 编译:cc c xxx.m xxx.c
  3. 链接:cc xxx.o xxx.o framework Foundation(用到了Foundation框架需加上-framework Foundation
  4. 运行:./a.out

    [ 注意:编译和链接可以合并:cc xxx.m xxx.m –framework Foundation ]

 5. #import

  #import是一个预处理指令,作用跟C语言的#include类似,都是 包含(拷贝)某个文件的内容 到 预处理指令所在的位置

  • #import的用途:
    • #include一样,拷贝文件的内容。
    • 可以自动防止文件的内容被重复拷贝。
    • #import来包含头文件,优点是可以自动防止同一个头文件被包含多次。

      #import <...>表示包含系统自带的文件,#import "..."表示包含开发人员自己创建的文件

  • #import <Foundation/Foundation.h>
    • 包含Foundation框架下的Foundation.h文件
    • Foundation.h是主头文件(里面的内容都是Foundation框架下所有头文件的链接)
    • [主头文件名与其框架名保持一致]
    • 只需要包含主头文件,就可以使用其整个框架的东西!   

Xcode中:

  按住command键,鼠标点击可以访问框架和方法的详细内容

  快捷键command+F可以快速查找

6. 数据类型

    

  • OC中常用数据类型:

     

  • OC中Boolean(布林,true/false)类型和BOOL(布尔,YES/NO)类型都可以用作逻辑判断!
  • SEL类型的作用:

    方法选择器   @selector(方法名)

(1)配合对象()来检查对象()中有没有实现某一个方法

    

  respondsToSelector注意点:

  • 如果是通过一个对象来调用该方法那么会判断该对象有没有实现-号开头的方法
  • 如果是通过类来调用该方法, 那么会判断该类有没有实现+号开头的方法

(2)配合对象()来调用某一个SEL方法

     

(3)配合对象将SEL类型作为方法的形参,即@selector(方法名)” 可作为方法的参数(将一个方法作为另一个方法的参数传入)

可以把一个对象的方法传到另一个对象的方法中去执行。

7. OC中的for循环

    

8. OC中的异常捕捉方法

   @try …   @catch …  @finally

   

9. 修改项目模板

  • 修改项目模板及main函数中的内容:

    /Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/Project Templates/Mac/Application/Command Line Tool.xctemplate/TemplateInfo.plist

  • 修改OC文件头部的描述信息:

    /Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source/Cocoa Class.xctemplate

10. Xcode文档安装

(1)在线安装

    

(2)复制拷贝文档到文档安装目录

   Xcode文档安装位置:  /Applications/Xcode.app/Contents/Developer/Documentation/DocSets

  退出重新打开Xcode。如果还不行,/Users/你的用户名/Library/Developer/Shared/Documentation/DocSets 看是否存在同名的或版本更新的,把它删掉。

  注意:如果文件夹中有版本更高的文档不会显示低版本文档。

(3)文档里关键单词说明

Getting Started:新手入门

Guides:指南(程序员经常看的部分)

Reference:参考资料(程序员经常看的部分,里面有每个方法的说明)

Release Notes:发布说明

Sample Code:示例代码

Technical Notes:技术说明

Technical Q&A:常见技术问答

Video:视频(主要是WWDC的视频)

(4)如何阅读文档

    快速查询文档:

    1》按住option键,单击要查询的关键内容

      

    2》通过Quick Help查询(双击选中要查询的关键内容,再点击”问号“看快速文档)

      

     3》在帮助文档中直接搜索

       

      

11. 自定义代码块(快捷方式)

    

  如何导入别人写的快捷方式(代码块)?

     将代码块文件直接拷贝到下面目录中,然后重启Xcode即可。

    /Users/renbo/Library/Developer/Xcode/UserData/CodeSnippets

12. 代码分组

  #pragma mark - 对代码分组

  功能:简单来说就是对代码的分组。方便代码查找和导航用的

13. 常见错误

  只有方法声的明没有方法的实现,调用方法会出现下面经典错误:发送了一个未识别的消息给实例

reason'-[类名 方法]unrecognized selector sent to instance 0x100301fd0'

 

原文地址:https://www.cnblogs.com/bossren/p/6424850.html