黑马程序员——[OC]面向对象01
来源:互联网 发布:淘宝申诉耐克授权书 编辑:程序博客网 时间:2024/06/05 15:00
------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
前言:OC是面向对象的,C是面向过程的。面向对象和面向过程只是解决问题的两种不同思想。面向对象的思想对于处理OC程序
来说是非常重要的。比如你想要打一个电话,面向过程的思想就是1.打开手机2.找到电话号码3.播出。而利用面向对象的思想,我们
先要想到的是对象是谁?对象是所有我们可以利用的名词。那么在打一个电话这个时间中,对象就是电话。行为就是:打电话。没
有开发经验是很难感受到它们的区别的,两种思想都能达到解决问题的目的,但是解决思路是不一样。
在学习OC时,我们要经常用到对象,要学会利用面向对象来处理问题。
想打电话\发短信-> 找手机,不用分析电话要怎样才能拨通
去饭店吃饭->找服务员,不用分析怎么到厨房炒菜
汽车坏了 ->找汽车维修工,不用分析修车的步骤
境界:万物皆对象
常用术语
面向过程 ProcedureOriented
面向对象 ObjectOriented,简称OO
面向对象编程 ObjectOriented Programming,简称OOP
一:类和对象的关系
面向对象中有2个非常重要的概念:类和对象
类:具有相同或者相似属性或者行为的对象都可以抽象为类。利用类,按需索取出对象。OC中的类就相当于创造时的图纸,是抽象的。而对象就是按图纸操作的工程,是具体的。
开发过程中首先需要设计类,按需索取创建对象。
二:类的初步设计
类的设计包括:
1事物名称(类名):第一个字母必须是大写
2属性(类具备的特征)
3行为(类具备哪些行为)
具体小设计:
1>设计一个车类(Car)
属性:speed、wheels
行为:run
2>设计一个学生类 (Student)
属性:age、num
行为:study
3>设计一个僵尸类(Zoombie)
属性: life,speed,attack
功能:walk,bite,death
三:完整的设计类
完整的写一个函数需要有申明和实现,完整的写一个类也需要类的声明和实现。
1>类的声明
声明对象的属性、行为
NSObject目的是:让Zoombie这个类具备创建对象的能力
@public可以让外部的指针间接访问对象内部的成员变量
默认的成员变量值会初始化为0
只要是OC对象的方法,必须以减号 - 开头
OC方法中任何数据类型都必须用小括号()括住
OC方法中的小括号()作用:括住数据类型
2>类的实现
用来实现@inteface中声明的方法
3>利用类来创建对象
在OC中,想执行一些行为,就写上一个中括号[行为执行者 行为名称]
定义了一个指针变量p,p将来指向的是Zoombie类型的对象
[Zoombie new]每次都会创建出一个新对象,并且会返回新对象本身(新对象的地址)
面向对象的好处:更加接近人类的思考方式,只需要关注对象,不需要关注步骤。
四:对象方法
1>不带参数的方法:
设计一个返回PI的方法
方法的声明: 方法类型 (返回值类型)方法名;
方法调用: [指针变量名 方法名];
2>带一个参数的方法
设计一个计算整数平方的方法
方法的声明: 方法类型 (返回值类型)方法名:(参数类型)参数名称;
方法的调用:[指针变量名 方法名:实际参数];
3>带多个参数的方法
设计一个计算和的方法
- 黑马程序员——[OC]面向对象01
- 黑马程序员——OC—OC中的面向对象
- 黑马程序员——OC---面向对象之类和对象
- 黑马程序员——OC学习——面向对象
- 黑马程序员—OC—面向对象(二)
- 黑马程序员—OC—面向对象(一)
- 黑马程序员——OC基础---面向对象语法
- 黑马程序员——OC面向对象编程
- 黑马程序员——OC面向对象的基础认识
- 4、黑马程序员-OC面向对象—封装
- 5、黑马程序员-OC面向对象—继承
- 6、黑马程序员-OC面向对象—多态
- 黑马程序员—OC语言面向对象三大特性
- 黑马程序员---oc--面向对象
- 黑马程序员——OC—OC中面向对象的特性之封装
- 黑马程序员——OC—OC中面向的对象特征之继承和派生
- 黑马程序员—面向对象
- 黑马程序员—面向对象
- SpringMVC之controller篇
- 远程桌面长时间不自动断开和增加同时在线用户数
- 判断是否为IE浏览器
- LeetCode172——Factorial Trailing Zeroes
- Xcode创建子工程以及工程依赖
- 黑马程序员——[OC]面向对象01
- 在Iph上如何最佳地使用GMAIL 联系人
- Avoiding LD_LIBRARY_PATH: The Option
- T001-UT001-0006
- 互联网公司面试
- crypto API used in ipsec
- Android平台开发C++程序的有效工具
- c++构造函数详解
- CountDownTimer----Android API