zoukankan      html  css  js  c++  java
  • OC 复合 组装电脑

    键盘类

    #import <Foundation/Foundation.h>

     @interface Keyboard : NSObject

    @property(strong,nonatomic)NSString *brand;

    @end

     

    #import "Keyboard.h"

    @implementation Keyboard

    - (NSString *)description

    {

        return [NSString stringWithFormat:@"%@", _brand];

    }

    @end


    鼠标类

    #import <Foundation/Foundation.h>

     @interface Mouse : NSObject

    @property(strong,nonatomic)NSString *brand;

    @end

    #import "Mouse.h"

     @implementation Mouse

    - (NSString *)description

    {

        return [NSString stringWithFormat:@"%@", _brand];

    }

    @end


    显示屏类

    #import <Foundation/Foundation.h>

     @interface Displayer : NSObject

    @property(strong,nonatomic)NSString *brand;

    @end

    #import <Foundation/Foundation.h>

     @interface Displayer : NSObject

    @property(strong,nonatomic)NSString *brand;

    @end


    机箱类 

    #import <Foundation/Foundation.h>

     @interface Engine : NSObject

    @property(strong,nonatomic)NSString *brand;

    @end

    #import "Engine.h"

     @implementation Engine

    - (NSString *)description

    {

        return [NSString stringWithFormat:@"%@", _brand];

    }

    @end


    电脑类

    #import <Foundation/Foundation.h>

    #import "Keyboard.h"

    #import "Mouse.h"

    #import "Displayer.h"

    #import "Engine.h"

    @interface Computer : NSObject

    @property(strong,nonatomic)Mouse *mouse;

    @property(strong,nonatomic)Keyboard *keyboard;

    @property(strong,nonatomic)Displayer *displayer;

    @property(strong,nonatomic)Engine *engline;

    -(void)run;

    @end

    #import "Computer.h"

    #import "Keyboard.h"

    #import "Mouse.h"

    #import "Displayer.h"

    #import "Engine.h"

    @implementation Computer

    - (instancetype)init

    {

        self = [super init];

        if (self) {

            Mouse *mouse= [[Mouse alloc] init];

            mouse.brand=@"BENQ";

            self.mouse=mouse;

            

            Keyboard *keyboard=[Keyboard new];

            keyboard.brand=@"BENQ";

            self.keyboard=keyboard;

            

            Displayer *displayer=[Displayer new];

            displayer.brand=@"SUMSUN";

            self.displayer=displayer;

            

            Engine *engline=[Engine new];

            engline.brand=@"Mac mini";

            self.engline=engline;

        }

        return self;

    }

    -(void)run

    {

        NSLog(@"%@",[_mouse description]);

        NSLog(@"%@",[_keyboard description]);

        NSLog(@"%@",[_displayer description]);

        NSLog(@"%@",[_engline description]);

    }

    @end


    main 函数

    #import <Foundation/Foundation.h>

    #import "Computer.h"

    int main(int argc, const char * argv[]) {

        @autoreleasepool {

            Computer *computer=[[Computer alloc] init];

    //        Keyboard *keyboard=[[Keyboard alloc] init];

    //        Mouse *mouse=[[Mouse alloc] init];

    //        Engine *engline=[[Engine alloc] init];

    //        Displayer *displary=[[Displayer alloc] init];

    //        

    //        computer.mouse=mouse;

    //        computer.keyboard=keyboard;

    //        computer.engline=engline;

    //        computer.displayer=displary;

            

    //        mouse.brand=@"BENQ";

    //        keyboard.brand=@"BENQ";

    //        displary.brand=@"SUMSUN";

    //        engline.brand=@"Mac mini";

            

            [computer run];

            

        }

        return 0;

    }


    运行结果

  • 相关阅读:
    python 查看所有的关键字
    使用yum命令报错File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: SyntaxError: invalid syntax问题
    安装Python3.6.2报错:zipimport.ZipImportError: can't decompress data; zlib not available
    在CentOS-7.0中安装Python3.6.2
    批处理基础
    linux创建线程之pthread_create
    嵌入式 printf函数
    滤波算法
    单片机启动文件
    SUID、SGID详解
  • 原文地址:https://www.cnblogs.com/bolin-123/p/5232118.html
Copyright © 2011-2022 走看看