zoukankan      html  css  js  c++  java
  • 12月18号 属性property

    默认成员变量是私有的   只在本身这个类里面可以使用

    @property演变过程

    但是由于代码量过于复杂冗长,引入了@property (声明)和 @synthesize(实现)

    后来又简化成只有@property,而省略了@synthesize,自动生成

    最后省略了成员变量改为属性,去掉了大括号,用@property属性一句话写完

    代码:

    @property (nonatomic, strong) NSString *name;

     @property (nonatomic, assign) int age;

     

    /*

     1. 定义了一个属性 name

     2. 声明了一个set方法

     3. 声明了一个get方法

     4. 实现了相应的setter/getter方法

     */

     

    定义了一个吃面包的函数,在内部方法调用内部属性的时候,要用_name,因为@synthesize虽然省略了,但是该实现的还是实现了

    -(void)eat:(Bread *)aBread{

        NSLog(@"%@吃掉了%@面包",_name,aBread.style);

    }

    main中赋值和调用的时候有两种方式

    1.  hr.name = @"wangkaiyu";

         NSLog(@"%@",wky.name);

    2.  [hr setAge:22];

         NSLog(@"%d",[wky age]);

  • 相关阅读:
    团队冲刺第八天
    团队冲刺第七天
    团队冲刺第六天
    团队冲刺第五天
    找水王
    团队冲刺第四天
    团队冲刺第三天
    团队冲刺第二天
    团队冲刺第一天
    spring冲刺计划
  • 原文地址:https://www.cnblogs.com/hmzxwky/p/5056729.html
Copyright © 2011-2022 走看看