美文网首页
第三章 类,对象和方法

第三章 类,对象和方法

作者: vikimemory | 来源:发表于2019-03-07 20:16 被阅读0次

什么是对象= =
像java,c++,objective-c都是面向对象的语言
而c就是过程性语言
面向对象编程就是你有一个东西,然后你要对它做什么。

比如说你拥有一辆车,它是你拥有的东西,但是它拥有自己的属性,它和别的车不一样,你想对它加油或者检修进行操作就是方法。而它属于车的大类。
类----车
对象----你的车
加油/检修etc.----方法
方法:类方法&实例方法

对一个大类进行的操作就是类方法(比如我要统计某个学校的学生的人数,就是对学生这个大类进行的操作)
对类中的某一个实例进行的操作就是实例方法(比如我要批改这个学生的某一科的作业,就是对一个实例进行的操作)

说了一堆,主要的概念就是,对象是类的一种独特表示,每个对象都带着自己独特的性质,然后方法就是用来改变这些数据的~

oc中类/实例方法的表示:

[ ClassOrInstance method ];

类名开头大写,其他开头小写;

以下是书上的一个示例代码:

#import <Foundation/Foundation.h>

//--- @interface部分---

@interface Fraction : NSObject

-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end

//---@implementation---
@implementation Fraction
{
    int numberator;
    int denominator;
}
-(void) print
{
    NSLog (@"%i/%i",numberator,denominator);
}
-(void) setNumerator: (int) n
{
    numberator = n;
}
-(void) setDenominator: (int) d
{
    denominator = d;
}

@end

//---program---
int main (int argc, char * argv[])
{
    @autoreleasepool {
        Fraction *myFraction;
        //指针指向新分配的内存地址
        
        //创建一个实例
        
        myFraction = [Fraction alloc];//分配内存空间,保证对象变成初始状态
        //返回值给myFraction这个对象
        myFraction = [myFraction init];//初始化类的实例变量
        //init给myFraction发送消息,要实例化一个特殊的对象,所以没有发送给类而是发送给类的一个对象;init也可以返回一个值(初始化的对象),把返回值存储在myFraction这个变量里
        //可以直接合并
        //写成 Fraction *myFraction = [ [ Fraction alloc] init ];
        //给这个实例赋值
        [myFraction setNumerator: 1];
        [myFraction setDenominator: 3];
        
        NSLog (@"the value is");
        [myFraction print];
    }
    return 0;
}

@interface 用于描述类和类里的方法(声明)
@implementation 用于描述数据,并实现声明中的方法
program 实现程序的预期目的(main函数)
-表示实例方法
+表示类方法


屏幕快照 2019-03-07 下午8.07.29.png

相关文章

  • Category实现原理

    依赖runtime 动态的将分类的方法和类方法合并到类对象和元类对象的方法列表中 (对实例对象 类对象 元类对...

  • Java类和对象

    原文链接 Java类和对象 你将学到: 类和对象的概念是什么 Java中创建类和对象的方法 构造方法重载 类和对象...

  • 类和对象

    面向对象概述类类的构造方法静态变量、常量和方法类的主方法对象

  • 1.9. 类方法的声明和实现

    目录 类方法声明 类方法实现 对象方法和类方法区别 1.类方法声明 格式将对象方法-号变为+号 特征类方法以+开头...

  • Python学习笔记5

    面向对象 类和对象的创建 属相相关 方法相关 元类 内置的特殊属性 内置的特殊方法 面向对象 类和对象的创建 类 ...

  • 2.1 类和对象(面向对象)

    1、类和对象 对象:确定对象的属性和方法类的特点:类是对象的类型,具有相同属性和方法的一组对象集合属性:对象具有的...

  • 2018-11-22

    今天我们继续学习了类和对象的相关知识。类中的方法分为:对象方法, 类方法和静态方法:1.对象方法a.直接声明在类中...

  • 对象方法和类方法

    -对象方法 +类方法 调用对象方法必须先创建对象,在通过对象来调用。 类方法不依赖对象,使用对象名直接调用。 类方...

  • 类方法和对象方法

    +description方法决定了类对象的输出结果,即类本身 -description方法决定了实例对象的输出结果...

  • Java自学-类和对象 类方法

    Java的类方法和对象方法 类方法: 又叫做静态方法 对象方法: 又叫实例方法,非静态方法 访问一个对象方法,必须...

网友评论

      本文标题:第三章 类,对象和方法

      本文链接:https://www.haomeiwen.com/subject/cluxpqtx.html