美文网首页iOS Developer
Objective-C之OOP知识

Objective-C之OOP知识

作者: 5c0d26b96912 | 来源:发表于2016-07-10 10:22 被阅读57次

    1.创建一个类

    // Super Class
    @interface Shape : NSObject
    {
        // value
        ShapeColor fillColor;
    }
    // function
    -(void) setFillColor : (ShapeColor) fillColor;
    -(void) draw;
    @end  // Shape interface
    
    @implementation Shape
    -(void) setFillColor : (ShapeColor) fillColor
    {
         self->fillColor = fillColor;
    }
    -(void) draw
    {
        // draw
    }
    @end // Shape implementation
    

    2.实例化

    Shape *shape = [Shape new];
    [shape setFillColor : color];
    [shape draw];
    

    3.继承

    // extends
    @interface Circle : Shape
    @end // Circle interface
    
    @implementation Circle
    -(void) setFillColor : (ShapeColor) fillColor
    {
         [super setFillColor : fillColor];
    }
    -(void) draw
    {
         // draw function override
    }
    @end // Circle implementation
    

    4.复合

    多个类组合在一起配合使用,组成一个新的类。
    使用复合可组合多个对象,使之分工协作。

    @interface Unicycle : NSObject
    {
        Pedal *Pedal;
        Tire *tire;
    }
    //setter and getter below
    @end //Unicycle
    
    @interface Tire : NSObject
    //detail
    @end //Tire
    
    @interface Pedal : NSObject
    //detail
    @end //Pedal
    

    Pedal和Tire通过复合的方式组成了Unicycle

    5.类拆分

    每个类都有两个文件:

    • 包含类@interface部分的.h文件;
    • 包含@implementation部分的.m文件。

    类的使用者可以导入(#import).h文件来获得该类的功能。
    同时可以巧妙使用@class指令取代#import减少编译时间,继承例外,必须采用#import

    相关文章

      网友评论

        本文标题:Objective-C之OOP知识

        本文链接:https://www.haomeiwen.com/subject/fmrdjttx.html