四.OC基础--1.文档安装和方法重载,2.self和super&static,3.继承和派生,4.实例变量修饰符 ,5.私有变量&私有方法,6.description方法

四.OC基础--1.文档安装和方法重载,

  1. 在线安装
    xcode-> 系统偏好设置->DownLoads->Doucument->下载

  2. 离线安装
    百度xcode文档

  3. 方法重载: 是指在一个类中定义多个同名的方法
    在OC中没有重载

    

2.self和super&static,

  self和super:
    1. self理解: 谁调用当前方法, self就代表谁.
    比如: 在对象方法中,self代表的是对象, 因为只有对象才可以调用对象方法
    在类方法中, self代表的是类, 因为只有类名才可以调用类方法.

    注意: 在对象方法中不要使用self调用类方法
       在类方法中不要使用self调用对象方法

    2. 获取当前对象的类: Person *p = [Person p];
      [p class] = [Person class] = Person

    3. 在对象方法中可以通过 self->_speed访问成员变量.

    4. super代表的是当前类的父类.

  static关键字:
    1. 在c语言中 static可以修饰局部变量、全局变量、函数
    2. 在OC中, 不能用来修饰实例变量和方法, 但是可以修饰局部变量, 全局变量

3.继承和派生,

  继承格式:
    @interface Cat : Animal

    @end

  继承定义: 子类拥有了属性和方法.

  派生: 父类向下产生子类的过程称为派生

  继承的注意事项:
    1. 子类不能定义和父类同名的变量,但是可以继承父类的变量
    2. OC类支持单一继承,不支持多继承

    3.我们都知道objective C不能像C++一样支持多继承,但是在OC的使用经常会碰到需要使用多继承的情况。例如,ClassA中有methodA,ClassB中methodB,

     而现在需要使用这两个类中的方法。

    答案:通过协议可以实现oc中的多继承

4.实例变量修饰符 ,

  作用范围:
  @public : 作用于所有的类
  @protected: 作用于当前类,子类(派生类)
  @private: 作用于当前类
  @package: 作用框架级别的

  默认情况下实例变量属于@protected修饰.

5.私有变量&私有方法,

  定义格式:
    在.m文件当中定义
    @implementation Person : NSObject
    {
      int age; // 私有变量
    }

    // 不在.h文件中声明, 只在.m文件中实现
    -(void)run{

      NSLog(@"我是私有方法");
    }
    @end

    私有方法只能在当前文件中使用, 不能被子类继承.

6.description方法

  1. description方法默认返回对象的描述信息(默认实现是返回类名和对象的内存地址) ;

  2. 重写description方法:
    -(NSString *)description{
      return [NSString stringWithFormat:@"狗腿的个数:%d,狗的眼睛个数:%d",_tuiNum, _eyeNum];
    }

  3. 千万不要在description方法中同时使用%@和self
    - (NSString *)description {
      return [NSString stringWithFormat:@"%@", self];
    }
  同时使用了%@和self,代表要调用self的description方法,因此最终会导致程序陷入死循环,循环调用description方法

时间: 2024-12-11 01:38:23

四.OC基础--1.文档安装和方法重载,2.self和super&static,3.继承和派生,4.实例变量修饰符 ,5.私有变量&私有方法,6.description方法的相关文章

服务端零基础架设文档

python基础环境搭建 window下环境变量设置 设置后可以方便的使用python命令行,以及python路径下的Script工具. 1.python的安装路径 2.python script 工具的路径 这两个路径加入到path环境变量中去 pywin32 安装 在window下需要访问系统api的地方都需要用到pywin32.可以根据自己的python版本去下载对应的pywin32的安装包.下载地址:http://sourceforge.net/projects/pywin32/file

[译文]Casperjs1.1.0参考文档-安装

安装 Casperjs能被安装在mac osx,windows 和大多数linux版本 依赖项 PhantomJS1.82及以上 Python2.6及以上 1.1版本的新特性 试验性的:在1.1-beta1版本,slimerjs 0.8及以上版本可以在 gecko(firefox)内核上运行你的测试.(仅需要在执行语句命令行中增加–engine=slimerjs这个参数) Mac osx下安装 略 Npm安装 略 从git安装 略 从一个档案安装 你可以从此处下载源代码: 最近的开发版: htt

UI 基础----Xcode 文档路径,模拟器路径

Xcode文档安装路径 /Applications/Xcode.app/Contents/Developer/Documentation/DocSets Xcode模拟器安装路径 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs 著作权声明:本文为作者原创,欢迎转载分享.请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢!

OC继承以及实例变量修饰符

这里基本上跟java一样 所以就简单写几点要注意的: 1)OC与java一样都只支持单继承可以多层继承(java单继承多实现) 2) OC中的实例变量修饰符前要加 @ 例如 @private 例如下面一个问题  @private类型的变量,能否被子类继承     答案:当然是可以的,子类继承父类的一切,只不过不能访问而已

Xcode文档安装

1.Xcode文档在线安装 打开Xcode,首选项 点击DownLoads下载文档 2.Xcode文档离线安装 找到备份的文档 com.apple.adc.documentation.AppleiOS8.0.iOSLibrary.docset 找到DocSets目录 /Applications/Xcode.app/Contents/Developer/Documentation/DocSets 拷贝文件到该目录 退出重新打开Xcode 如果还不行,/Users/你的用户名/Library/Dev

关于SqlServer2012本地帮助文档安装失败问题

由于本人在前一段时间安装了SqlServer2012,安装后没有自带本地帮助文档,因为新的数据库版本微软捆绑了一个本地帮助文档查看器软件,所以在这个软件里面选择联机安装的时候,总是下载不成功,原因你们懂的,服务器不在中国,速度奇慢无比,最终在网上找了好久才找到该解决问题 1 打开下面的链接下载 http://www.microsoft.com/zh-cn/download/details.aspx?id=347 用于受防火墙和代理限制的环境的 Microsoft SQL Server 2012

Hive基础学习文档和入门教程

问题导读 1.hive除了包含用户接口.元数据,还包含哪些内容? 2.hive包含哪些操作? 3.hive数据能否被修改? 4.hive优化有哪些常用方法? 摘要: Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据.同时,这个语言也允许熟悉 MapReduce 开发者

【SQL】SQL2012离线帮助文档安装不上的处理手记

注:解决方法在最后,心急的童鞋可以直接往下滚动. 我SQL实例装的是2008 R2版,由于该版自带的SSMS(Microsoft SQL Server Management Studio 管理工具)存在一些操蛋问题,例如: - 文本编辑器中对矩形文本块(alt+鼠标左键选取)的操作支持不好,例如不能多行批量键入,块粘贴之类 - 复制结果集时,cell中的回车换行会变为两个空格,不能准确得到cell的值,这点尤为操蛋 于是我安装了独立版的SSMS 2014(https://www.microsof

vim中文帮助文档安装

下载对应版本的中文帮助文档,例如:vim8.0下载vimcdoc-2.1.0.tar.gz $ wget http://nchc.dl.sourceforge.net/sourceforge/vimcdoc/vimcdoc-2.1.0.tar.gz 解压vimcdoc-2.1.0.tar.gz $ tar -zxvf vimcdoc-2.1.0.tar.gz 解压后其中有个doc文件夹, 将其中的内容全部复制到home/.vim/doc(如果目录不存在,手动新建), 或者vim安装目录下的doc