• 0034 类和对象


    /*
       
       类:  
     
            一类事物共同特征和行为的抽象
     
            大卡车    小轿车    挖掘机
     
            车类: Car
            共同的特征(属性): 颜色   速度   轮子
            共同的行为: 跑     停止
     
       对象:
     
            类的具体的个体
     
     
            东风21D(车类的对象)
     
            解放大卡车(车类的对象)
     
            BYD (车的对象)
     
            时风 (车的对象)
     
     
         2、类的定义
     
            结构体定义
            struct Student{
     
     
            };   ---->定义一个Student 结构体
     
     
     
            类的定义分为两部分:
     
            1)类的声明(规定当前类的:类名、属性、行为)
     
               @interface 类名:父类名
               {
                  //定义类的属性
                }
                //类的行为
               @end
     
     
     
            2)类的实现(实现具体行为)
     
               @implementation 类名
     
                //行为的具体实现
     
               @end
     
     
     */
    
    
    #import <Foundation/Foundation.h>
    
    //车的类的声明
    @interface Car:NSObject
    {
       //类的属性
        int lunzi;  //车的轮子
        NSString *color;//车的颜色
        int speed;  //车的速度
    }
       //类的行为
    @end
    
    
    //类的实现
    @implementation Car
    //行为的具体描述
    @end
    
    
    
    
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            // insert code here...
            NSLog(@"Hello, World!");
        }
        return 0;
    }
    
    
    /*
     
       在OC中用已经存在的类,如何创建一个对象?
     
           回顾C的结构体,结构体如何创建结构体变量
     
           struct Student stu;  //stu就是结构体变量
     
           struct Student *pstu; //pstu = &stu;
     
           结构体指针访问 结构体变量中的成员变量值
           pstu->age = 20;  //给age 设置 值 是 20
     
     
       OC中对象创建
     
           [Car new];  
           //做了3件事情
           // 1)向计算机申请内存空间
           // 2) 给类中的每一个成员初始化值
           // 3)返回新申请的空间的首地址
     
           //理解方式一:
           //定义了一个Car类型的指针变量
           //指针变量指向新申请的内存空间
     
           //理解方式二:
           //用Car类实例化了一个实例对象,对象的名称是p
             Car *p = [Car new];
     
     
     
     */
    
    
    #import <Foundation/Foundation.h>
    
    //车的类的声明                 车的图纸(类)
    @interface Car:NSObject
    {
        //类的属性
        @public;
        
        int lunzi;  //车的轮子
        NSString *color;//车的颜色
        int speed;  //车的速度
    }
    //类的行为
    @end
    
    
    //类的实现
    @implementation Car
    //行为的具体描述
    @end
    
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
          
            //创建Car类型的对象 car1
        
            Car *car1=[Car new];
            
            //创建一个对象 实质还是指针 (用指针间接访问实例变量值)
            car1->lunzi = 3;
            car1->speed = 150;
            car1->color = @"蓝色";
            
            //查看车的信息
            NSLog(@"轮子:%d,速度:%d ,颜色:%@",car1->lunzi,car1->speed,car1->color);
            
        }
        return 0;
    }
    
  • 相关阅读:
    LeetCode 123. Best Time to Buy and Sell Stock III (stock problem)
    精帖转载(关于stock problem)
    LeetCode 122. Best Time to Buy and Sell Stock II (stock problem)
    LeetCode 121. Best Time to Buy and Sell Stock (stock problem)
    LeetCode 120. Triangle
    基于docker 搭建Elasticsearch5.6.4 分布式集群
    从零开始构建一个centos+jdk7+tomcat7的docker镜像文件
    Harbor实现容器镜像仓库的管理和运维
    docker中制作自己的JDK+tomcat镜像
    docker镜像制作---jdk7+tomcat7基础镜像
  • 原文地址:https://www.cnblogs.com/aiti/p/4660612.html
Copyright © 2020-2023  润新知