zoukankan      html  css  js  c++  java
  • OC 中property的使用

    property在使用的时候需要在其前面加上@符号,需要将其写在类的头文件中

    当在定义一个对象的属性变量时,例如定义一个Person类中的name属性,可定义为:

    @property (nonatomic, strong) NSString *name;

    当在定义C语言的基础变量时,可定义为:

    @property (nonatomic, assign) NSIntegar;

    其中property有三个功能:

    1.声明一个名为_name的成员变量

    2.包含set方法

    3.包含get方法

    @property (nonatomic,strong,setter=method) NSString *score1;

    nonatomic,非原子操作,安全性低,执行率高

    atomic,原子操作,安全性高,执行率低

    strong和retain等同,只是版本不同,强引用类型,在使用时会使这个对象的retaincount +1。retain不仅在定义的时候可以使用,在代码中声明拥有权时也会用到。

    weak,弱引用,只定义了一个对象类型,不会声明拥有权。

    copy,复制,通常在block中用到

    assign,C语言基本对象类型,或者是在delegate中防止循环引用。

    readwrite,可读可写,提供了get和set方法

    readonly,只读,只提供get方法。

    setter,设置set方法的名称

    getter,设置get方法的名称。

  • 相关阅读:
    Vue-发布订阅机制(bus)实现非父子组件的传值
    01. jupyter环境安装
    人工智能
    Javascript
    JavaScript
    MongoDB
    MongoDB
    人工智能
    Flask
    Flask
  • 原文地址:https://www.cnblogs.com/laorenyuhail/p/9370767.html
Copyright © 2011-2022 走看看