《开发第章类的初始化.ppt
文本预览下载声明
第十六章:类的初始化 类的初始化 初始化方法名是以init开头(规范) 我们也可以自定义类的初始化方法,以initWith开头 最好将初始化方法的返回值设置为id类型 实例变量作用域 控制作用域的三个指令 typedef语句 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. -(id)initWithXXX:(数据类型)参数名1 XXX:(数据类型)参数名2. . . { self = [super init]; if(self) { [self setXXX:参数名1 XXX:参数. . .]; } return self; } 自定义类的初始化方法格式: Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 实例变量的默认作用域:只限于为该类定义的实例方法,因此任何实例方法都能直接通过变量名来访问该类的实例变量,而无需特别操作。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. @protected(保护) 这个指令后面的实例变量可被该类及任何子类中定义 的方法直接访问。这是默认的情况。 @private(私有) 这个指令后面的实例变量可被定义在该类的实例方法直接访问,但是不能被子类中定义的实例方法直接访问 @public(公共) 这个指令后面的实例变量可被该类中定义的实例方法直接访问,也可被其他类中定义的方法直接访问 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. @interface Fraction:NSObject { @public int a; @protected int b; @private int c; int d; } @end 【注意】 1、这些指令到另一个指令开始结束 2、public指令使得可以通过运算符-访问实例变量 3、将实例变量声明为公共的不是良好的编程习惯 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. Objective-C提供了一种能力:程序员可以为数据类型另外指派一个名称,这是通过typedef语句定义的 语句:typedef int myInt; 定义一个新类型名的步骤: 1,像声明所需类型的变量那样编写一条语句 2,在通常应该出现声明的变量名的地方,将其替换为新的类型名 3,在语句前面加上关键字typedef Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd.
显示全部