在Objective-C中浅谈面向对象

在Objective-C中浅谈面向对象

ID:47110303

大小:166.34 KB

页数:8页

时间:2019-08-05

在Objective-C中浅谈面向对象_第1页
在Objective-C中浅谈面向对象_第2页
在Objective-C中浅谈面向对象_第3页
在Objective-C中浅谈面向对象_第4页
在Objective-C中浅谈面向对象_第5页
资源描述:

《在Objective-C中浅谈面向对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、在Objective-C中浅谈面向对象刚接触OC,用OC中的便利初始化方法和便利构造器有点蹩脚,不过还可以在接受的范围之内,以下的东西可能会对面向对象的特征:抽象,封装,继承等总结的较少一些,主要总结了OC中面向对象的特点。在用到便利构造器的时候,如果之前学习过设计模式的话会好理解一些。言归正传,便利构造器就是对便利初始化函数的间接使用,目的是为了简化对象的初始化(这里是我个人的理解)。便利初始化函数(对象方法)的作用是给实例常量赋初值,在类的实例化后就可以调用便利初始化函数了。而便利构造器是类方法,返回的是对象,在便

2、利构造器中做了两件事:一个是给对象分配空间,第二个是调用便利初始化函数进行数据的初始化。学过设计模式的小伙伴都应该知道“模板方法模式”,我个人感觉便利构造器和模板方法模式的作用挺相似的。以下的东西是依附于代码来讲解的,编程吗,即使讲思想也少不了代码不是吗,话不多说,切入正题。请大家批评指正,若要转载请注明出处。面向对象程序开发的主要目标:用代码模拟现实中的对象,将现实中对象的某些行为能力,特征用代码表现出来,然后用这些代码来模拟现实中的问题。每个对象都会从两个角度进行描述,一个是特征,一个是行为能力特征:可以是物体的组

3、成部分,也可以是一些物理或逻辑上的属性,用来表现对象的形态,构成及状态。行为能力:对象所能被进行的操作或者物体本身发起的操作。用来接受外部操作或对外部进行操作。封装:将属性及方法相结合,共同体现对象的特征,称之为封装,封装可以实现隐藏内部实现,稳定外部接口。在OC中类是由接口(interface)和实现(implementation)两部分构成的。在OC中类是通过两个单独的文件定义。接口定义在对应的头文件中,该文件的作用是说明此类具有哪些属性和方法,但不去实现其行为。1. OC中接口的定义如下:8Objective-C

4、1234567891011121314151617181920#import @interfaceStudent:NSObject{//大括号里定义属性    //定义学生的学号,姓名,年龄,爱好;    @public    NSString*studentName;    int age;    NSString*hobby;} /*定义学生有关的方法,+修饰的为类方法,不用实例化就可以直接用类访问*-号修饰的为对象方法,必须实例化后才能使用,就是用对象调用的方法*/ //定义打招呼的方法-(void)sayHel

5、lo;//吃饭行为-(void)eat;@end代码说明:                1.#import语句告诉编译器查看Foundation框架中的Foundation.h的头文件                2.用#import指令来导入相应的文件,#import的作用相当于PHP中的require_once,如果文件之前导入过了,则不导入,而#include会重复导入文件的                3.用编译器指令@interface来定义类的声明,@interface后面是类名,Student:NS

6、Object说明Student继承于NSObject类                4.在接口中方法只有声明,没有实现,方法前面的减号代表此方法是对象方法,如果是+号的话,说明是类方法,就是说类可以直接访问此方法。                5.@interface和@end是成对出现的,@end代表接口定义的结束8                6.上面得成员变量定义成了公有的,这在开发中是极少见的,这里为了方便练习才这么写的,一般把成员变量定义为私有的然后在定义get,set方法去操作成员变量这样才起到了封装

7、,不要把自己的手直接伸入到类中,要通过类提供的方法来操作类的成员变量。2.@implementation实现部分实现部分文件的扩展名为.m,具体实现的方法代码如下:Objective-C12345678910111213141516#import"Student.h" @implementationStudent//实现打招呼的行为-(void)sayHello{    NSLog(@"hello!我是%@,我今年

8、%d岁了,我喜欢%@!",studentName,age,hobby);} //实现吃饭行为-(void)eat{    NSLog(@"%@也得吃饭呢!",studentName);} @end代码说明:                1.在实现文件中首先导入对应的类的接口文件#import“Student.h”,引入系统文件用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。