转载请标明出处:
http://blog.csdn.net/hai_qing_xu_kong/article/details/53513004
本文出自:【顾林海的博客】

前言

关于c语言的基础部分已经记录完毕,接下来就是学习Object-C了,编写oc程序需要使用Foundation框架。下面就是对oc中的对象介绍。

对象

对象和结构类似,一个对象可以保存多个相关的数据。在结构中,我们称这些数据为成员。而在对象中,称这些数据为实例变量。除了这些以外,对象和结构不用之处在于,对象还可以包含一组函数,并且这些函数可以使用对象所保存的数据,这类函数称为方法

类(class)负责描述某个特点类型的对象,其中包括方法实例变量。类可以描述以下两种对象:

  • 抽象概念,例如数据、字符串和指令集。
  • 实际存在的事物,例如人、地点等。

一个类定义了一种对象,同时它也可以用来创建这种对象。类既是对象的原型,又是生产对象的工厂。

实例

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {@autoreleasepool {// insert code here...NSDate *today=[NSDate date];NSLog(@"%p",today);}return 0;
}

上面程序中 等号(=)左边是变量today,变量前面的*说明它是一个指针,这个指针保存着NSdate实例在内存中的地址。赋值运算符的右边是返回了NSDate实例的地址。整个过程称为消息发送

方法和函数类似。根据指令执行相应的功能。oc中,想要执行方法里的代码,首先需要发送一条消息给包含这个方法的对象或类。

上面的程序中NSDate类中有一个date方法,因此,我们向NSDate类发送了date消息,让它执行date方法。

消息发送必须写在一对方括号里,并且必须包含接受方和选择器。

如下面格式:

修改程序,如下:

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {@autoreleasepool {// insert code here...NSDate *today=[NSDate date];NSLog(@"today=%@",today);}return 0;
}

输出结果:
today=2016-12-06 00:02:59 +0000

获取到NSDate的实例,这时就可以给它发送消息了,如下程序:

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {@autoreleasepool {// insert code here...NSDate *today=[NSDate date];double seconds=[today timeIntervalSince1970];NSLog(@"seconds=%f",seconds);}return 0;
}

输出结果:
seconds=1480982760.070326

timeIntervalSince1970的作用是会算出现在的时间和1970年1月1号12:00 AM(GTM)之间的时间差。

IOS开发笔记10-Object-C中的对象相关推荐

  1. IOS开发笔记12-Object-C中的对象与内存

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/53556243 本文出自:[顾林海的博客] 前言 Object-C的内存 ...

  2. IOS开发笔记17-Object-C中的继承

    转载请标明出处:[顾林海的博客] 个人开发的微信小程序,目前功能是书籍推荐,后续会完善一些新功能,希望大家多多支持! ##前言 在前面的程序Person.h文件中可以看到,Person继承了NSObj ...

  3. IOS开发笔记16-Object-C中的属性

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/54667858 本文出自:[顾林海的博客] 前言 前一篇笔记记录了自定类 ...

  4. IOS开发笔记13-Object-C中的NSString

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/53572258 本文出自:[顾林海的博客] 前言 NSString是Ob ...

  5. IOS开发笔记11-Object-C中的传递消息

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/53534039 本文出自:[顾林海的博客] 前言 在前一篇例子中传递的是 ...

  6. iOS开发笔记--iOS应用架构谈 view层的组织和调用方案

    前言 <iOS应用架构谈 开篇>出来之后,很多人来催我赶紧出第二篇.这一篇文章出得相当艰难,因为公司里的破事儿特别多,我自己又有点私事儿,以至于能用来写博客的时间不够充分. 现在好啦,第二 ...

  7. iOS开发笔记-两种单例模式的写法

    iOS开发笔记-两种单例模式的写法 单例模式是开发中最常用的写法之一,iOS的单例模式有两种官方写法,如下: 不使用GCD #import "ServiceManager.h"st ...

  8. IOS开发笔记之推广安装(用网页判断是否安装App)

    IOS开发笔记之推广安装(用网页判断是否安装App) 在做App推广的时候,我们经常会用到网页链接下载,亦或是一张二维码,最常见的做法就是将App在iTunes中的下载链接嵌入,当用户扫描或者点击网页 ...

  9. IOS开发笔记之常用的第三方库(太多了。)

    图像: 1.图片浏览控件MWPhotoBrowser  实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存.可对图片进行缩放等操作. ...

最新文章

  1. c语言将数组中奇数放在另一个数组,把数组中所有的奇数放在另一个数组中返回...
  2. java编程题有难度的_算法与编程面试题 不喜勿喷 难度指数:*****...
  3. Qt工作笔记-以配置文件的方式动态获取Mysql数据库中的数据
  4. 我要3万取款机怎么取_自助取款机一天可以取多少,能取出来几万呢?
  5. Ubuntu 安装 中文输入法(Google 拼音)
  6. 功率 dbm 和 mw 的换算
  7. 计算机组成原理完整学习笔记(六):指令系统
  8. 自动控制理论 第一章 思维导图
  9. UltraEdit注册机
  10. matlab计算abc三相短路电流_电工都知道三相电动机按一千瓦两个电流计算 却不会计算公式...
  11. Lync Server 服务器版本升级
  12. beyong经典之作
  13. Android仿微信朋友圈图片展示效果,图片查看器
  14. SIW 2021 v11.6.0824 电脑信息综合检测工具技术员单文件版
  15. Python爬虫爬取某小说网的教程(含全代码)#大佬勿喷
  16. 概率编程——未来也可以这样预测
  17. 百度nlp实习生转岗(猝)
  18. Libev源码分析05:Libev中的绝对时间定时器
  19. (洛谷)P4995 跳跳!
  20. 试用AI写作软件AI-WRITER.COM:重写(rewrite)功能测试简短报告

热门文章

  1. php 商场收银收费系统,使用的策略模式
  2. Linux Centos7安装chrome浏览器
  3. 核显也能玩游戏,OS X Yosemite优化指南
  4. C#拾遗系列(9):继承、接口、扩展方法、分部类、类操作、Ref and Out、可空类型...
  5. 简单剖析智能指针的思想
  6. 服务器安全股v4.0正式版发布 防火墙效能更强
  7. 基于Android平台的多分辨率解决方案[图]
  8. 使用 CommandBuilder 生成命令 (ADO.NET)
  9. Android activity生命周期
  10. python基础之import模块导入和包的调用