zoukankan      html  css  js  c++  java
  • object-c 学习总结

    #import <Foundation/Foundation.h>
    
    @interface Person : NSObject
    {
        @public
        NSString *_name;
        BOOL _gender;
        @private
        NSInteger _age;
        CGFloat _height;
        CGFloat _weight;
    }
    -(id)init;
    -(instancetype)initWithName:(NSString*)name andGender:(BOOL)gender;
    -(NSInteger)adder:(NSInteger)x :(NSInteger)y;
    -(void)setName:(NSString *)name;
    -(void)setAge:(NSInteger)age;
    -(void)setName:(NSString *)name andAge:(NSInteger)age;
    -(void)setName:(NSString *)name :(NSInteger)age;
    +(void)eat;
    -(void)sing;
    -(void)printInfo;
    @end
    
    @implementation Person
    -(id)init{
        _name=@"王五";
        _gender=NO;
        _age = 18;
        _height = 1.80;
        _weight = 78;
        return self;
    }
    -(instancetype)initWithName:(NSString *)name andGender:(BOOL)gender{
        _name = name;
        _gender = gender;
        return self;
    }
    -(NSInteger)adder:(NSInteger)x :(NSInteger)y{
        NSLog(@"%ld",x+y);
        return x+y;
    }
    +(void)eat{
        NSLog(@"吃吃吃...");
    }
    -(void)sing{
        NSLog(@"唱唱唱...");
    }
    -(void)setName:(NSString *)name{
        _name = name;
    }
    -(void)setAge:(NSInteger)age{
        _age = age;
    }
    -(void)setName:(NSString *)name andAge:(NSInteger)age{
        _name = name;
        _age = age;
    }
    -(void)setName:(NSString *)name :(NSInteger)age{
        _name = name;
        _age = age;
    }
    -(void)printInfo{
        NSLog(@"name:%@, gender:%@, age:%ld, height:%.2f, weight:%.2f",_name, _gender?@"female":@"male",
              _age, _height, _weight);
    }
    @end
    
    int main(int argc, const char * argv[]) {
        Person *person1 = [[Person alloc]initWithName:@"张三" andGender:0];
        [person1 printInfo];
        [person1 sing];
        Person *person2 = [[Person alloc]init];
        [person2 printInfo];
        [Person eat];
            return 0;
    }

    注意:

    1. 类的定义一般写在.h头文件中,类中函数的实现可以在.m文件中个性化实现。

    2. 静态函数是所有类对象共有的一个函数,只占用一个函数空间,可通过类名调用。

    3. 类的init方法是初始化方法,类的实例化和c++很像,都是调用构造方法来实现对实例的初始化。

    4. +表示静态函数,-表示动态函数

    输出为:

  • 相关阅读:
    A20 烧录和启动 log
    图像处理---图像分割技术---基于图像灰度分布的阈值方法一
    H.265---内容总览
    H.265---仿射运动模型和双线性运动模型
    H.265---帧内预测与帧间预测
    linux内核---进程通信---消息队列
    linux内核---嵌入式linux内核的五个子系统
    高并发服务器---nginx---实现负载均衡的几种方式
    高并发服务器---nginx---正向代理和反向代理
    【CV系列】基于形态学梯度的边缘检测
  • 原文地址:https://www.cnblogs.com/raiuny/p/13334777.html
Copyright © 2011-2022 走看看