zoukankan      html  css  js  c++  java
  • 什么么是Category

    什么是Category

    • Category有很多种翻译:分类类别类目(一般叫分类)
    • Category是OC特有的语法,其他语言没有的语法
    • Category的作用
      • 可以在不修改原来类的基础上,为这个类扩充一些方法

    书写格式

    • 声明
      • @interface 类名(分类名称)
      • @end
    • 实现
      • @implementation类名(分类名称)
      • @end

    书写格式举例

    • 声明
      • #import "Student.h"
      • @interface Student (Study)
      • @end
    • 实现
      • #import "Student+Study.h"
      • @implementation Student (Study)
      • @end

    使用Xcode创建分类

    使用注意

    • 分类只能增加方法,不能增加成员变量
    • 分类可以访问原来类中的成员变量
    • 如果分类和原来类出现同名的方法,优先调用分类中的方法,原来类中的方法会被忽略
    • 方法调用的优先级(从高到低)
      • 分类(最后参与编译的分类优先)
      • 原来类
      • 父类

    价值所在

    • 实现了类的相关方法的模块
      • 把不同的方法分配到了不同的分类文件中
      • 可以用一个分类来代表一类功能(一个模块)
    • 支持团队协作
      • 可以让团队内部的不同成员共同扩充某个类的功能
    • 可以为系统自带的类扩充功能

    类扩展

    • 什么是类扩展
      • 可以为某个类扩充一些私有的成员变量和方法
      • 写在.m文件中
      • 英文名是Class Extension
    • 书写格式
      • @interface 类名()
      • @end
    • 对比分类,就少了一个分类名称,因此也有人称它为"匿名分类"
  • 相关阅读:
    SQL注入绕过——主要是magic_quotes_gpc, is_int(只能跑路,无注入点),以及关键字绕过,WAF绕过
    小葵多功能转换工具——编解码绕过,TODO
    load_file() 常用敏感信息
    crontab 结合 thinkphp3.2
    Docker 小型电脑
    Linux 查找大目录
    phpmyadmin 连接远程数据库
    git 变更 地址
    showdoc可以导出
    showdoc搭建
  • 原文地址:https://www.cnblogs.com/saurik/p/4831762.html
Copyright © 2011-2022 走看看