1. OC在C的基础上新增了一些面向对象的语法,将C的复杂的、繁琐的语法封装的更为简单。且OC完全兼容C语言.

2. OC程序的源文件的后缀名是.m, m 代表message,代表OC中最重要的一个机制 —— 消息机制.   C程序的源文件的后缀名为.c

3. main 函数仍然是OC程序的入口和出口.

4. #import指令

1). 以#开头,是一个预处理指令。

2). 作用:是#include指令的增强版,将文件的内容在预编译的时候拷贝写指令的地方。

3). 增强:同一个文件,无论#import多少次,只会包含一次。

4). 简要原理:#import指令在包含文件的时候,底层会先判断这个文件是否被包含,如果被包含就会略过,否则才会包含。

5. Foundation 框架

1). 框架是一个功能集合 苹果或者第三方事先将一些程序在开发程序时经常要用到的功能事先写好,把这些功能封装在1个1个的类或者函数之中。这些函数和类的集合就叫做框架。

2). Foundation:基础、基本。这个框架提供了一些最基本的功能。  输入和输出、一些数据类型。

6. 字符串NSString

1). C语言的字符串的存储方式

a. 使用字符指针

b. 使用字符数组存储

2). OC中设计了一个更为好用的用来存储字符串的一个类型 —— NSString

NSString 类型的指针变量,专门用来存储OC字符串的地址。

3). OC的字符串常量必须要使用一个前缀@符号

"jack" 这个是一个C语言的字符串。

@"jack" 这是一个OC字符串常量。

注意:NSString类型的指针变量,只能存储OC字符串的地址。

7. NS前缀

  NextStep  --->  Cocoa   ---> Foundation 框架

8. @符号

  1). 将C字符串转换为OC字符串

    例如:"jack"      @"jack"

  2). OC中的绝大部分的关键字都是以@符号开头.

9. OC 中的数据类型

  1). OC中支持C语言中所有的数据类型。

    a. 基本数据类型

      int、double、float、char

    b. 构造类型

      数组、结构体、枚举

    c. 指针类型

      int *p1;

    d. 自定义类型

      typedef

    e. 空类型

      void

  2). BOOL 类型

    a. 可以存储YES或者NO中的任意一个数据。

    b. 一般情况下,BOOL 类型的变量用来存储条件表达式的结果。如果条件表达式成立,结果是YES,否则为NO。

  3). Boolean 类型

    a. 可以存储true或者false

    b. 一般情况下,Boolean 类型的变量用来存储条件表达式的结果。如果条件表达式成立,结果是true,否则为false。

10. OC 的关键字

  1). OC支持C语言中的全部关键字,并且效果一致。

  2). OC也新增了一些关键字。OC中绝大数的关键字都是以@开头的,如@interface、@public

至此,OC的基本知识就了解的差不多了,也算是对OC入门了。

Objective-C 学习 (一):Objective-C 概述的更多相关文章

  1. OGG学习笔记01-基础概述

    OGG学习笔记01-基础概述 OGG(Oracle Golden Gate),最近几年在数据同步.容灾领域特别火,甚至比Oracle自己的原生产品DataGuard还要风光,主要是因为其跨平台.跨数据 ...

  2. NLP&深度学习:近期趋势概述

    NLP&深度学习:近期趋势概述 摘要:当NLP遇上深度学习,到底发生了什么样的变化呢? 在最近发表的论文中,Young及其同事汇总了基于深度学习的自然语言处理(NLP)系统和应用程序的一些最新 ...

  3. Objective -C学习笔记之字典

    //字典:(关键字 值) // NSArray *array = [NSArray array];//空数组 // NSDictionary *dictionary = [NSDictionary d ...

  4. Objective -C学习笔记 之copy(复制)

    //自定义类对象实现copy需要遵守copy协议(否则程序崩溃),实现必须实现的协议方法,里面的代码就决定了你的copy是深是浅 #import <Foundation/Foundation.h ...

  5. objective C 学习之02

    1. 函数 -(void) HelloWorld:(BOOL)ishelloworld{ //干点啥 } 前面带有减号(-) 的方法为实例方法,必须使用类的实例才可以调用的.对应的有+号, 代表是类的 ...

  6. objective c 学习(一)

    问题一:我在程序中看到大量的减号.中括号和NS****这种东西,他们是什么玩意儿? 1 减号(或者加号) 减号表示一个函数.或者方法.或者消息的开始,怎么说都行. 比如c#中,一个方法的写法可能是: ...

  7. (二)我的Makefile学习冲动&&编译过程概述

    前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 ...

  8. [原创]java WEB学习笔记78:Hibernate学习之路---session概述,session缓存(hibernate 一级缓存),数据库的隔离级别,在 MySql 中设置隔离级别,在 Hibernate 中设置隔离级别

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  9. [原创]java WEB学习笔记67:Struts2 学习之路-- 类型转换概述, 类型转换错误修改,如何自定义类型转换器

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  10. MySQL数据库学习: 01 —— 数据库的概述

    壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...

随机推荐

  1. ucloud mysql

    [root@--- bin]# yum install mysql-server Loaded plugins: fastestmirror Setting up Install Process Lo ...

  2. Mongodb---操作备忘

     mysql/mongodb对比 CREATE TABLE USERS (a Number, b Number) Implicit or use MongoDB::createCollection() ...

  3. Android软键盘弹出,覆盖h5页面输入框问题

    之前我们在使用vue进行 h5 表单录入的过程中,遇到了Android软键盘弹出,覆盖 h5页面 输入框 问题,在此进行回顾并分享给大家: 系统:Android 条件:当输入框在可视区底部或者偏下的位 ...

  4. python爬取所有微信好友的信息

    ''' 爬取所有T信好友的信息 ''' import itchat from pandas import DataFrame itchat.login() friends=itchat.get_fri ...

  5. Effective Java 第三版——43.方法引用优于lambda表达式

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  6. CSS技术实例1-使用CSS计数器实现数值计算小游戏实例页面

    一 实例要达到的要求如图所示: 二 分析 1.7个圆角矩形标签(或按钮) 2. 点击触发并开始运算,最后一个标签显示结果 3.计算成功后弹出"万岁"字眼 三 代码实现 关键CSS代 ...

  7. System.out.println()

    System是java.lang中的类,out为System中的一个静态数据成员,out是java.io.PrintStream类的对象,而println()是java.io.PrintStream类 ...

  8. 【k短路&A*算法】BZOJ1975: [Sdoi2010]魔法猪学院

    Description 找出1~k短路的长度.   Solution k短路的求解要用到A*算法 A*算法的启发式函数f(n)=g(n)+h(n) g(n)是状态空间中搜索到n所花的实际代价 h(n) ...

  9. 【爆料】-《维多利亚大学毕业证书》Victoria一模一样原件

    ☞维多利亚大学毕业证书[微/Q:865121257◆WeChat:CC6669834]UC毕业证书/联系人Alice[查看点击百度快照查看][留信网学历认证&博士&硕士&海归& ...

  10. Windows上安装配置SSH教程(6)——综合应用:在Windows上实现SSH远程登陆与文件传输

    ----------------- 声明:本教程现已经弃用.由于客户端同时安装Cygwin和OpenSSH for Windows会出现问题(Cygwin的shell下无法使用ssh命令),建议直接在 ...