• 类、对象和方法


    一)对象的初始化

    alloc 和init方法都是继承自NSObject,不需重写。

    如果需要在类对象初始化时做一些工作,可以重载init方法达到目的。

    self=[super init];

    if(self){

    //初始化代码

    为什么会有这句?这一句方法首先会调用父类的初始化方法。执行父类的初始化方法,使得继承的实例变量能够正常初始化。必须将父类的init方法的执行结果赋值给self,因为初始化过程改变了对象在内存中的位置(意味着引用将要改变)。这句话我也不懂。。。。。。

    如果父类的初始化过程成功,返回的值将是非空。

     二)工厂方法 ,也叫类方法,顾名思义,也就是类的方法。对于类的实例,就具有了实例方法。实例方法总是可以直接访问他的实例变量的,然而,类方法则不能,因为他只处理本身,并不处理类实例。

    三)为什么声明的对象都是*开头?表明这只是一个引用(或指针);变量实际上并不存储对象的值,而是存储了一个引用(其实是内存地址),表明对象数据在内存中的位置。

    声明的对象,他的值是未定义的,也没有默认值。

    实例方法总是可以直接访问他的实例变量的,然而从别的位置是不能够直接访问这些实例变量,需要通过方法,这就是所谓的数据封装。

    这也是属性这个关键字的简便之处。

  • 相关阅读:
    [网络基础 ] 分层体系结构
    网络的基础知识
    计算机网络基础知识总结
    理解urllib、urllib2及requests区别及运用
    js ajax请求
    c# winform导出Excel
    mysql小技巧
    “允许源文件与模块生成文件不同” 解决方法 ,亲测最有效的
    ThoughtWorks.QRCode生成二维码
    python3.5.2爬虫
  • 原文地址:https://www.cnblogs.com/changeUniversal/p/4662774.html
Copyright © 2020-2023  润新知