关于object-c中的super与self

原创 2015年07月08日 00:57:50

学过java或者c++的同学或许都知道this关键字是指当前类,这里oc中的self实际上也是一样的道理,是代表该类。而super则是指基类。
比如在进行初始化的时候,oc中都是这么写的:

-(id)init{
    self = [super init];
    if(self){
        //待初始化的代码段
    }
}

这里实际就是通过基类Foundation来进行初始化的,如果获取到基类初始化的返回指针,那么就可以进行本类的初始化了。
还有一点需要注意,方法前面的“+”、“-”的含义,加号是指类的方法,也称为静态方法,在java中静态方法不用实例化对象就能直接调用,这里实质是一样的。减号则是对象的方法,通过实例化对象以后,由对象来调用。

ios开发self和super的区别

self和super区别self 是关键字 代表当前方法的调用者 如果是类方法:代表当前类 如果是对象方法:代表当前类的对象 super编译器指令[self message]和[super mess...
  • li15809284891
  • li15809284891
  • 2017年02月02日 17:52
  • 1088

Objective-C语言--self和super关键字解析

Objective-C中self和super关键字分析
  • AddyChen
  • AddyChen
  • 2015年07月15日 17:17
  • 3597

Objective-C初始化对象的时候为什么总是有一句:if (self = [super init])

摘自:http://www.oschina.net/question/54100_32468 众所周知,Objective-C是一门面向对象的语言,一般情况下,我们在Objective-C中定义一个类...
  • liu537192
  • liu537192
  • 2015年02月03日 17:29
  • 710

Object-C 中self.用法的在学习

MyClass.h   @interface MyClass : NSObject {   MyObject *myObject;}  @property (nonatomic, re...
  • a6472953
  • a6472953
  • 2013年02月02日 10:58
  • 3530

appium第一次尝试

测试脚本:python脚本(转的) from appium import webdriver desired_caps = {} desired_caps['platformName'] = 'And...
  • g695144224
  • g695144224
  • 2016年03月09日 16:55
  • 1025

OC中属性self.a与_a访问的区别

在OC中我们可以通过指令@property定义属性。 OC对属性封装了许多方法,同时也会自动实现一些方法,相比实例变量,感觉更加面向对象些。 一般定义属性的方法如下,在Class Test中定义属性i...
  • u013378438
  • u013378438
  • 2015年03月11日 16:39
  • 1318

Python学习--常见异常总结(持续更新)

class Restaurant(): def _init_(self,r_name,r_type): self.r_name = r_name self.r_type = r_type ...
  • m0_38096534
  • m0_38096534
  • 2017年07月22日 17:57
  • 64

详解python的super()的作用和原理

Python中对象方法的定义很怪异,第一个参数一般都命名为self(相当于其它语言的this,比如:C#),用于传递对象本身,而在调用的时候则不 必显式传递,系统会自动传递。 今天我们介绍的主角是...
  • liwei825755184
  • liwei825755184
  • 2017年01月14日 10:54
  • 853

Python2.7中的super方法浅见

重写是继承机制中的重要内容,对于构造方法尤为重要。构造方法用来初始化新建对象的状态,大多数子类不仅要有自己的初始化代码,还要拥有超类的初始化代码。 如果一个类的构造方法被重写,那么就需要调用超类的...
  • m0_37310097
  • m0_37310097
  • 2017年07月18日 14:57
  • 496

python中super用法研究

python语言与C++有相似的类继承,在类定义时,python中会自定义第一个self,类似C++中this指针,指向对象自身。 python简单的类举例: >>> class hello(obje...
  • u011467044
  • u011467044
  • 2016年08月14日 21:06
  • 5383
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于object-c中的super与self
举报原因:
原因补充:

(最多只允许输入30个字)