[Objective-C]1、类,对象,方法

2017-12-07  本文已影响8人  兰歌er

1、类的独特存在就是一个实例(对象),对实例执行的操作称作方法。

2、实例初始化:
1.初始化方式:
alloc :方法保证对象的所有实例变量都变成初始状态。 创建对象。
init :方法用于初始化类的实例变量。 初始化对象。
new :可以将 alloc 和 init 的结合起来。 创建并初始化对象。

  2.构造方法:
     重载init方法的一个标准模板
 不带参数:

        - (instancetype)init {

            self = [super init];
            if (self) {

                // 初始化代码
            }
            return self;    
        }

    带参数:

        - (instancetype)initWithAge:(int)age andNo:(int)no {    
            self = [super init];
            if (self) {

                _age = age;
                _no = no;   
            }
            return self;
        }

    类方法:

        + (instancetype *)studentWithAge:(int)age {

            Student *stu = [[Student alloc] init];
            stu.age = age;

            return stu;
        }

*执行父类的初始化方法,使得继承的实例变量能够正常的初始化。如果父类初始化成功,返回的值将是非空的。self 用来指明对象是当前方法的接收者。必须将父类 init 方法的执行结果赋值给 self,因为初始化过程改变了对象在内存中的位置(意味着引用将要改变)。
*特殊类型 instancetype 表明从 init 方法返回的类型与它的初始化类(也就是初始化消息的接收者)相同。 init 被定义为返回 instancetype 类型,这是编写可能被继承的类 init 方法的一般规则。当编译器遇见 instancetype 作为返回类型,它就知道返回的类型是发送消息的对象。
http://www.cnblogs.com/QianChia/p/5780671.html#_label0

上一篇下一篇

猜你喜欢

热点阅读