类和对象

#import是include的升级版,可以自动防止重复包含,所以注意:大家以后在引入头文件的时候都使用import

Foundation是一个框架,Foundation.h是Foundation框架的主头文件

#import <Foundation/Foundation.h>

找到Foundation框架头文件的路径:

Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks

oc程序的入口和c一样,都是main函数

区别

1.名字不同

2.引入的头文件不同

3.打印的格式不同,在打印时,NSlog后面的括号内要以@开头

4.打印的内容不同

5.NSlog可以自动换行

6.printf用于打印c的字符串,NSlog打印oc的字符串

OC中的类

类的关系三个方面:

1.名称(类名):首字母大写,如果名称是由多个单词组成的,后面的单词遵循驼峰原则

2.属性:一般以下划线开头。

3.行为(方法):首字母小写,后面遵循驼峰原则:将行为写在离执行这个行为最直接的对象

OC对象

当你尝试做一些事情(执行功能)的时候,你就这样写[类名/对象 方法名称]  [方法的调用者 方法名称]

1.用类名去调用的方法叫类方法

2.用对象去调用的方法叫对象方法

创建一个对象

例: Iphone *iphone1 = [Iphone new];//[类名/对象 方法名称]

[Iphone new];

1.分配内存空间

2.初始化成员变量(又叫实例变量,是类声明当中大括号里面的属性值),将整数值初始化为零

3.返回空间的地址

oc当中所有的类都可以看做一种数据类型

oc对象给成员变量赋值与结构体相同

一个类可以创建很多个对象,对象之间毫不影响

isa指针不是我们创建的,是每个类都有的,隐藏的成员变量

对象方法

对象方法要以-开头,2.所有的数据类型放在小括号里面,且只有数据类型放在小括号里面。3.方法名遵循驼峰原则 4.如果没有参数,方法名后面什么都不用写。5.行为的声明写在@interface 类名 :NSObject {}大括号下面,@end上面

在声明当中声明了什么方法,实现当中就实现什么方法实现在@implematation 类名里@end上面

Objective-C(二、类和对象)的更多相关文章

  1. Java复习(二)类与对象的基本概念

    2.1面向对象的程序设计方法概述 对象 程序中: 一切皆是对象 都具有标识,属性和行为 通过一个或多个变量来保存其状态 通过方法实现他的行为 类 将属性及行为相同或相似的对象归为一类 类可以看成是对象 ...

  2. Java基础 之二 类和对象

    1.基础概念 1) 概念 简单来说,类是具有相同特征事物的抽象,比如有轮子的都可以抽象为车:对象则可以看做类的具体实例,比如创建一个法拉利的车,就是车这个类的实例. 抽象.封装.继承.多态是类的四个特 ...

  3. Objective-C 笔记二 类、对象和方法

    对象就是一个物件.面向对象的程序设计可以看成一个物件和你想对它做的事情.这与C语言不同,C语言通常称为过程性语言.在C语言中,通常是先考虑要做什么,然后才关注对象,这几乎总是与面相对象的思考过程相反. ...

  4. JAVA:类,对象,成员属性,成员方法,构造方法,类变量,类方法<2>

    一.类的定义 一个全面的类定义是比较复杂的,  定义如下:

  5. Java学习第二篇:类,对象,成员属性,成员方法,构造方法,类变量,类方法

    一.类的定义 一个全面的类定义是比较复杂的,  定义如下:

  6. C++引用、类型转换、类和对象(day03)

    十 C++的引用(Reference) 引用型函数参数 )将引用用于函数的参数,可以修改实参变量的值,同时也能减小函数调用的开销. )引用参数有可能意外修饰实参的值,如果不希望修改实参变量本身,可以将 ...

  7. oc语言学习之基础知识点介绍(二):类和对象的进一步介绍

    一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...

  8. C++中的类和对象(二)

    一,对象的动态建立和释放 1.什么是对象的动态建立和释放 通常我们创建的对象都是由C++编译器为我们在栈内存中创建的,我们无法对其进行生命周期的管理.所以我们需要动态的去建立该对象,因此我们需要在堆内 ...

  9. day 22 二十二、面向对象导入、名称空间、类与对象

    一.面向对象导入 1.含义: ①面向过程: 重过程:解决问题,考虑的是解决问题的流程 解决问题的思路清晰,但拓展性不强 ②面向对象: 重对象:解决问题,找到解决问题的对象 解决问题的思路可能不止一条( ...

随机推荐

  1. STORM_0002_在做好的zookeeper集群上搭建storm的开发环境

    参考文献http://www.cnblogs.com/panfeng412/archive/2012/11/30/how-to-install-and-deploy-storm-cluster.htm ...

  2. js问的我醉的不要不要的。

    function a(b){ console.log(b); function b(){ console.log(b); } b();} a(1); 两个console.log会输出什么?竟然一个1都 ...

  3. 14 Using Indexes and Clusters

    do not build indexes unless necessary. 索引是非常占资源的To maintain optimal performance, drop indexes that a ...

  4. 适应各浏览器图片裁剪无刷新上传jQuery插件(转)

    看到一篇兼容性很强的图片无刷新裁剪上传的帖子,感觉很棒.分享下!~ 废话不多说,上效果图. 一.首先建立如下的一个page <!DOCTYPE html> <html xmlns=& ...

  5. Class create, device create, device create file (转)

    来自:http://www.hovercool.com/en/Class_create,_device_create,_device_create_file 开始写Linux设备驱动程序的时候,很多时 ...

  6. Python学习(12)日期和时间

    目录 Python 日期和时间 时间元组 获取当前时间 获取格式化时间 格式化日历 获取某月日历 Time模块 日历模块 其他相关模块和函数 Python 日期和时间 Python 程序能用很多方式处 ...

  7. TCP/IP协议学习(一) LWIP实现网络远程IAP下载更新

    最近需要实现通过TCP/IP远程IAP在线更新功能,忙了2周终于在原有嵌入式服务器的基础上实现了该功能,这里就记录下实现的过程. IAP又称在应用编程,其实说简单点就是实现不需要jlink,仅通过芯片 ...

  8. POJ 2385 Apple Catching

    比起之前一直在刷的背包题,这道题可以算是最纯粹的dp了,写下简单题解. 题意是说cows在1树和2树下来回移动取苹果,有移动次数限制,问最后能拿到的最多苹果数,含有最优子结构性质,大致的状态转移也不难 ...

  9. golang json

    1.Go语言的JSON 库 Go语言自带的JSON转换库为 encoding/json 1.1)其中把对象转换为JSON的方法(函数)为 json.Marshal(),其函数原型如下 func Mar ...

  10. easyui 删除数据表格

    1 最直接的方法: 返回的数据格式               Object rows:Array[3] 0:Object 1:Object 2:Object length:3 __proto__:A ...