zoukankan      html  css  js  c++  java
  • iOS基础知识之类别

    本类从三个方面介绍iOS中的类别,分别是  什么是类别;类别的语法;类别的作用。具体内容如下:

    一、类别:

    类的补丁:当不能获取现有类的源码,但需要对现有类的功能进行补充时,这种情况下使用类别。

    类别只能添加方法,不能添加成员变量。

    类别中不提倡使用@property,@property在类别中使用时,不能生成对应的私有变量,因为类别中不能声明成员变量。

    例如:对NSString进行加密MD5,这种情况下不能获取NSString的源码,但需要为其添加加密功能,则可以使用类别实现。

    二、类别语法

    1 @interface class_name (category_name)
    2 
    3 @end

    例如:

    1 @interface NSString (HelloWOrld)
    2 - (void)helloWorld;
    3 @end
    4 
    5 @implementation NSString (HelloWOrld)
    6 - (void)helloWorld {
    7   NSLog(@"hello world....");
    8 }
    9 @end

    表示通过类别为现有类NSString添加helloWorld方法。

    1 NSString *str = @"zhang";
    2 [str helloWorld];

    iOS中实现类别的关键步骤如下:

    1.选择Objective-C File,点击next.

    2.在File中填写类别名称,在File Type中选择Category,在Class中选择需要进行扩展的现有类,最后点击next。

    三、类别的作用
    1.使用类别为一个类的“隐藏方法,即未在.h中声明的方法”添加声明。

    2.分散一个大型的类,即当类中的方法过多时,可以将方法的声明和实现放到类别中实现,从而达到分散一个大型类的作用。

    注意:类别方法的优先级比类本身方法的优先级要高,即类别和类本身中拥有相同的方法时,有限调用类别内的方法。

    3.创建非正式协议,类似Java中的接口。

  • 相关阅读:
    PHP大文件上传断点续传源码
    PHP大文件上传断点续传解决方案
    Flash大文件断点续传解决方案
    Flash大文件断点续传功能
    ASP.NET上传断点续传
    B/S文件上传下载解决方案
    web文件夹上传下载方案
    Codeforces 460E Roland and Rose(暴力)
    iOS_25_彩票骨架搭建+导航栏适配
    配置Redmine的邮件通知功能
  • 原文地址:https://www.cnblogs.com/calence/p/6417558.html
Copyright © 2011-2022 走看看