zoukankan      html  css  js  c++  java
  • [ObjectC语言随笔之三] 类的创建和实例化以及函数的添加和调用!


    Himi 原创,转载请注明!

    原文地址:http://blog.csdn.net/xiaominghimi/archive/2011/06/30/6577412.aspx


    上一小节的随笔写了常用的打印以及很基础的数据类型的定义方式,今天就来一起学习下如何创建类与函数的一些随笔;

    首先类的创建:在Xcode下,菜单File-New File,然后出现选择class模板,如下图(图1)

         图1 class 模版选择界面

    这里不需要手动选择什么,,默认是Objective-C class模版,我们直接Next,出现以下窗口:(图2)

    图2  为新建类起类名

    窗口下,我们只需要将类名填写好就ok,直接点击”Finish“,这里便于讲解后续的代码,这里我将类名起名为”MyClass“

    点击”Finish“后,在我们的项目下会出现两个文件:

    1. MyClass.m

    2. MyClass.h

    接触过c语言的很熟悉会生成两个文件,将一个类分为了两个部分,简单而言:

    “.h”后缀的是此类声明,比如变量、方法声明都会在此文件下定义—类定义部分;

    “.m”文件是书写类方法的实现—类实现部分;

    ok,然后先看"MyClass.h"与“MyClass.h” 两个文件中自动生成的代码:

     

    下面我们简单在MyClass类中添加几个函数和变量,当然我这里说的添加在实现上分为两步:首先在.h类声明文件中进行函数声明,然后在.m文件下进行实现;代码如下:

    首先在MyClass.h 中定义:

    定义了两个整型以及四个函数,函数的种类分为以下四种:

    1. 带返回值的函数

    2. 不带返回值的函数

    3.有一个参数的函数

    4.有两个(多个)参数的函数

    然后在MyClass.m中实现这些函数:

     

    关于函数定义有两点需要详细说明:

    1.关于“-”符号表示的方法类型其详细含义指的是 :实例方法;

    如果是“+”符号表示:这个函数是一个类函数,表明其他代码可以直接调用的类方法;不用创建其类的实例;

    2.关于多个参数参数定义:当想声明一个有多个参数的方法时,我们可以理解当前这个方法的方法名被分为多个部分;

    比如有两个参数,那么整个方法的名字可以认为此函数的名字将被分为两部分;三个参数的函数,其函数名就有三个部分...

    那么为了便于识别是一个函数中的名字部分,所以当参数有多个时,名字的命名规则可以按照如下这样:

    例如这里定义了一个三个参数的函数:

    方法名的第一部分:getHimi   第二部分 getHimiTwo 第三部分  ThreeGetThree

    当然这里我是想告诉大家,多个参数的函数中,每一部分的函数名尽可能有规律可循即可,便免与其他函数名混淆;

    ok,类设计完毕之后,下面我们在程序主函数中,实例此类对象,并调用其函数,代码如下:

    类的实例化:

    如上一段代码中对MyClass类的实例化的代码:

    MyClass *mc =[[MyClass alloc]init];

     [[MyClass alloc]init] 中的 alloc 是固定格式,是为对象申请内存空间,  init则完成对象的初始化工作;

    方法(函数的调用):

    首先我们通过实例化了一个MyClass对象-mc,然后通过mc调用其类中的函数:

    有返回值并且无参数的函数调用:

    变量 = [实例 方法名];

    没返回值且有一个参数的函数调用:

    [实例 方法名:参数]

    没返回值且有两个(多个)参数的函数调用:

    [实例 方法名(第一部分):参数1  方法名字(第二部分):参数2];

    ok,然后观察运行项目的结果:

    ok,此小节就是这些,下面附上源码下载把:仍然免费共享~希望大家多多支持~

    源码下载地址: http://download.csdn.net/source/3407625

    .

    .

  • 相关阅读:
    8种元素定位方式
    接口MD5加密如何测试?
    web自动化测试框架 —数据驱动测试
    等待方式
    全面开展测试需求分析
    字符串格式化(%方式 与 format方式)
    Python中八大基本数据类型之 集合
    Python中 __new__ 和 __init__ 的区别
    C/S模式与B/S模式的工作原理
    剑指offer--把二叉树打印成多行
  • 原文地址:https://www.cnblogs.com/encounter/p/2188418.html
Copyright © 2011-2022 走看看