zoukankan      html  css  js  c++  java
  • Objective-C Polymorphism

    #import <Foundation/Foundation.h>
    
    @interface Shape : NSObject 
    {
      CGFloat area;
    }
    -(void)printArea;
    -(void)calculateArea;
    @end
    
    @implementation Shape
    
    -(void)printArea {
     NSLog(@"The area is %f",area);
    }
    
    -(void)calculateArea {
    }
    
    @end
    
    
    @interface Square : Shape
    {
      CGFloat length;
    }
    
    -(id)initWithSide : (CGFloat)side;
    -(void)calculateArea;
    
    @end
    
    
    @implementation Square 
    
    -(id)initWithSide : (CGFloat)side {
     length = side;
     return self;
    }
    
    -(void)calculateArea {
     area = length * length;
    }
    
    -(void)printArea {
     NSLog(@"The area of square is %f", area);
    }
    
    @end
    
    
    @interface Rectangle : Shape 
    {
     CGFloat length;
     CGFloat breadth;
    }
    -(id)initWithLength: (CGFloat)rLen andBreadth:(CGFloat)rBreadth;
    
    @end
    
    
    @implementation Rectangle
    
    -(id)initWithLength: (CGFloat)rLen andBreadth:(CGFloat)rBreadth {
     length = rLen;
     breadth = rBreadth;
     return self;
    }
    
    -(void)calculateArea {
     area = length * breadth;
    }
    
    -(void)printArea {
     NSLog(@"The area of Rectangle is %f", area);
    }
    
    @end
    
    
    int main(int ar, const char * argv[])
    {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc]init];
      Shape *square = [[Square alloc]initWithSide:4.2];
      [square calculateArea];
      [square printArea];
      Shape *rect = [[Rectangle alloc]initWithLength:7.88 andBreadth:6.35];
      [rect calculateArea];
      [rect printArea];
      
      [pool drain];
      return 0;
      
    }
  • 相关阅读:
    JS控制台打印星星,总有你要的那一款~
    css居中方法
    line-height
    position定位
    IE盒子模型
    CSS中的盒模型
    CSS中的BEM命名
    循环语句总结(代码以C#为例)
    程序设计中的数学思维函数总结(代码以C#为例)
    转:SpringBoot 自定义异常@ContollerAdvice ExceptionHandler不起作用
  • 原文地址:https://www.cnblogs.com/silva/p/5227815.html
Copyright © 2011-2022 走看看