码迷,mamicode.com
首页 > 其他好文 > 详细

类和对象

时间:2015-06-19 16:35:59      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:



【面向过程的语言】
    1、CPU是接收消息的单位,它完成了数据的所有操作(存储和运算)
    2、是数学逻辑的映射
 
【面向对象的语言】
    1、对象是接收消息的单位,一个对象完成某个功能,多个对象协同工作,
            功能的模块化程度很高。
    2、是生活逻辑的映射
 
    Objective-C,简称OC
    1、OC完全兼容C
    2、OC是C的扩展,是C的超集
    3、扩展了面向对象支持

    难点:协议、代理、内存管理

一、认识类(Class)和对象(Object)
1、从生活逻辑上
        类                            对象
        人                习大大       李总理
        猫                加菲猫           Tom
        电脑            我的电脑 你的电脑

2、从封装的角度
    【结构体】是对存储数据的结构进行封装
    【函数】是对处理数据的方法进行封装
    【类】是对存储数据的结构进行封装,同时对处理数据的方法进行封装

3、从编程语言的角度
        类:是一种自定义的数据类型
        对象:是某个类类型的变量

4、从官方定义
        类:具有相同特性(属性和行为)的事物的抽象
        对象:某个类的具象
 
二、类的使用
Foundation.h几乎包含所有常用的C的头文件
#import 导入头文件,自动过滤重复包含问题

1、定义
@interface JYClass : NSObject
//:表示继承关系(子类:父类)
//NSObject是一个官方的类,是所有类的直接或间接的父类
//只有它没有父类,它也叫根类
{
    //这里声明成员变量,实例变量,对象属性,OC中也叫字段
    int _a;
}
//在这里声明成员方法,成员函数,OC中也叫消息
//打印_a的值
//void printA;
- (void)printA;
@end

//2、实现部分
@implementation JYClass
- (void)printA
{
    NSLog(@"_a = %d", _a);
}
@end

2、方法调用
[对象指针/接收者  方法/消息]

三、其它语法
1、类的创建
a、工程栏
b、导航栏

command + control + ??/??:切换一个类的接口和实现
xcode中的工程目录不同于磁盘目录

2、构造方法
作用:用于对象初始化
1、在创建对象自动调用的方法
2、OC中凡是以init开头的方法都是构造方法,需要手动调用
    
self:指向当前对象的指针,谁调用该方法,self就表示谁
super:是调用父类方法的关键字

[[JYHuman alloc] init] <==> [JYHuman new]

练习题:
1、定义一个数学类,里面有两个成员变量a,b,
        方法有变量的设置和加减乘除。
2、定义一个立方体,方法有长宽高的设置,体积的计算
3、小明手里有两张牌,左手♠?A,右手??K,问两手交换后,
        小明的手中分别是什么?
4、创建一辆汽车,属性有速度,
        编写关于速度的构造方法和set方法
5、创建一条公路,属性有长度,
        编写关于长度的构造方法和set方法
6、创建一个明信片类,
        属性:姓名,单位,电话号码,qq
        方法:构造方法,设置姓名、单位、电话号码、qq,
                        相关信息打印。




类和对象

标签:

原文地址:http://www.cnblogs.com/rainwz/p/4589008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!