Objective-C(二、类和对象)
类和对象
#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(二、类和对象)的更多相关文章
- Java复习(二)类与对象的基本概念
2.1面向对象的程序设计方法概述 对象 程序中: 一切皆是对象 都具有标识,属性和行为 通过一个或多个变量来保存其状态 通过方法实现他的行为 类 将属性及行为相同或相似的对象归为一类 类可以看成是对象 ...
- Java基础 之二 类和对象
1.基础概念 1) 概念 简单来说,类是具有相同特征事物的抽象,比如有轮子的都可以抽象为车:对象则可以看做类的具体实例,比如创建一个法拉利的车,就是车这个类的实例. 抽象.封装.继承.多态是类的四个特 ...
- Objective-C 笔记二 类、对象和方法
对象就是一个物件.面向对象的程序设计可以看成一个物件和你想对它做的事情.这与C语言不同,C语言通常称为过程性语言.在C语言中,通常是先考虑要做什么,然后才关注对象,这几乎总是与面相对象的思考过程相反. ...
- JAVA:类,对象,成员属性,成员方法,构造方法,类变量,类方法<2>
一.类的定义 一个全面的类定义是比较复杂的, 定义如下:
- Java学习第二篇:类,对象,成员属性,成员方法,构造方法,类变量,类方法
一.类的定义 一个全面的类定义是比较复杂的, 定义如下:
- C++引用、类型转换、类和对象(day03)
十 C++的引用(Reference) 引用型函数参数 )将引用用于函数的参数,可以修改实参变量的值,同时也能减小函数调用的开销. )引用参数有可能意外修饰实参的值,如果不希望修改实参变量本身,可以将 ...
- oc语言学习之基础知识点介绍(二):类和对象的进一步介绍
一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...
- C++中的类和对象(二)
一,对象的动态建立和释放 1.什么是对象的动态建立和释放 通常我们创建的对象都是由C++编译器为我们在栈内存中创建的,我们无法对其进行生命周期的管理.所以我们需要动态的去建立该对象,因此我们需要在堆内 ...
- day 22 二十二、面向对象导入、名称空间、类与对象
一.面向对象导入 1.含义: ①面向过程: 重过程:解决问题,考虑的是解决问题的流程 解决问题的思路清晰,但拓展性不强 ②面向对象: 重对象:解决问题,找到解决问题的对象 解决问题的思路可能不止一条( ...
随机推荐
- [Effective Java]第七章 方法
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- EntityManager方法简介
EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...
- Linux Shell Bash 带有特殊含义的退出码
linux在执行完一条命令后,使用 echo $? 会显示上一条命令是否执行成功,相关状态码如下 0为成功 表格 D-1. "保留的"退出码 退出码的值 含义 例子 注释 1 通用 ...
- Scrum Meeting---Four(2015-10-28)
今日已完成任务和明日要做的任务 姓名 今日已完成任务 今日时间 明日计划完成任务 估计用时 董元财 今日我完成了数据库表的设计以及创建 3h 进行Java Web工程的编写 4h 胡亚坤 用户之间的通 ...
- hibernate对象关系实现(二)一对一
双向一对一以部门和经理为例: a.部门和经理类中各自由对方的引用:(省略了get/set方法) b.数据库两种方式实现:一种(b.1)是外键映射,并将外键添加唯一约束(至于哪个对象的主键做外键,可随意 ...
- JS trim()方法使用
JS trim()方法使用上有浏览器限制: 1.直接使用 string.trim() 浏览器版本限制:JavaScript Version 1.8 2.间接使用<即自己使用正则构造类trim的 ...
- 排序算法 & 迷宫的深度, 广度优先
内容提要 1. 我掌握的排序算法的时间复杂度 2. 我掌握的6种排序算法(插入, 冒泡, 选择, 归并, 快速, 希尔) 3. 迷宫的搜索方法(深度优先 + 广度优先) 各种排序的时间复杂度 名称 稳 ...
- poj3714Raid(平面最近点对)
链接 模板 稍加一点标记 模板 #include <iostream> #include<cstdio> #include<cstring> #include< ...
- Android手机tcpdump抓包
在开发过程中遇到问题时,无法非常方便的获取到数据包,导致分析解决问题比较麻烦.这里介绍如何在Android手机上实现tcpdump抓包. 1.root机器 在用tcpdump抓包过程中,需要使用 ...
- mybatis实战
这篇教程不错,推荐:http://blog.csdn.net/techbirds_bao/article/details/9233599/