• 【OC简介-类和对象】


    OC与C语言相比,体现的是一种面向对象的思想。OC完全兼容C语言

    OC中大多数类前面都有前缀NS,来源于乔布斯NextStep团队,被苹果收购后保留了所有基本语法,合并到Foundation中

    OC语言以.m为文件后缀

    OC中绝对多数类继承自 NSObject  OC是单继承(可以使用协议来达到多继承的效果)

    一、关键字 @ 格式化为对象

    @"Hello, World!"  为字符串对象

    @[@"123",@"234"]; 数组

    @selector() 选择器

    @property 属性

    id  表示任意类型

    二、类

    //声明       person类   继承自  NSObject

    @interface   Person      :      NSObject

    {   //成员变量(有结构体的影子)、全局变量(它就是全局变量) 

       

      NSInteger age;

        NSString *name;

    }

    //实现

    @implementation Person

    @end

    很多情况我们会重写init方法,比如:

    - (instancetype)init

    {

        self = [super init];

        if (self) {

            //做一些事,设定默认值 预设条件

            age = 20;//如果不存在,自动设为0

            name = @"zhangsan";  //常量的赋值方法

            /*

             age = 0;

             name = nil;

             char *s = NULL

             */

            name = [[NSString alloc ]initWithFormat:@"zhangsan"];//一般用这种方法赋值

            NSLog(@"%ld",age);

            NSLog(@"%@",name);

        }

        return self;

    }

     

    三、对象初始化

    Person *per = [[Person alloc]init];

    Person *per = [[Person new];//跟上面效果是一样的

    分配好内存的对象 OC都是自动分配内存,然后将分配好的内存初始化为想要的对象 alloc分配内存  init 初始化

    注意:Person *per1 = per; 这个只是改名或者赋值

    四、对象输出

    对象都用%@输出

    NSLog(@"%@",per);

    五、方法

    格式:

    调用者 返回值  方法名称(带参就有冒号)      参数类型       形参名

     -       (void)      run            :                     (int)        distance;

    调用:

    [对象 方法名]

    [per run];

     

  • 相关阅读:
    如何提高产品规划PPT的能力
    怎样招聘出色的产品经理
    [转]破解VS2005 Team Suite版本180天限制
    [转]基于C#的接口基础教程之二
    [转]基于C#的接口基础教程之一
    数据加密标准(DES)的C#实现(4)
    数据加密标准(DES)的C#实现(3)(将BitConverter.ToString的结果转回byte[])
    ASP.NET自定义控件开发微调控件(NumericUpDown)
    Windows XP Embedded 信息资源
    [转]浅谈Base64编码
  • 原文地址:https://www.cnblogs.com/zhuimengfire/p/4414295.html
Copyright © 2020-2023  润新知