20、成员变量和属性

成员变量

属性

区别:类内使用成员变量,类外使用属性

属性是成员变量的外部接口,属性为了让类外可以访问成员变量

比如:姓名、年龄、性别,都是人固有的,是成员变量

再比如:

People.h

#import <Foundation/Foundation/h>

@interface People : NSObject

{
    NSString *_peopleName;
    int _peopleAge;
    int _peopleSex;
//上面三者为成员变量
}
//这时候是不能在main函数写p.peopleName

@property(nonatomic,strong)NSString *peopleName;
@end
//声明peopleName为属性
//这时候可以在main函数写p.peopleName
时间: 2024-10-29 19:09:40

20、成员变量和属性的相关文章

Objective-C Runtime 运行时之二:成员变量与属性

类型编码(Type Encoding) 作为对Runtime的补充,编译器将每个方法的返回值和参数类型编码为一个字符串,并将其与方法的selector关联在一起.这种编码方案在其它情况下也是非常有用的,因此我们可以使用@encode编译器指令来获取它.当给定一个类型时,@encode返回这个类型的字符串编码.这些类型可以是诸如int.指针这样的基本类型,也可以是结构体.类等类型.事实上,任何可以作为sizeof()操作参数的类型都可以用于@encode(). 在Objective-C Runti

runtime第二部分成员变量和属性

接上一篇 http://www.cnblogs.com/ddavidXu/p/5912306.html 转载来源http://www.jianshu.com/p/6b905584f536 http://southpeak.github.io/2014/10/30/objective-c-runtime-2/ 比较实用的内容都用颜色的字标记,并配有代码,并在末尾放上代码demo. 类型编码(Type Encoding) Objective-C不支持long double类型.@encode(lon

成员变量和属性

一个变量如果只想在当前类中使用,那么只需要让它作为成员变量就可以了. 一个变量如果想在类外使用,则还需要将其作为属性. 上图所示的职业,大脑,眼睛,嘴都属于对象的特征,大脑,眼睛和嘴是成员变量,职业就可以看做属性. 成员变量的声明方式: @interface People : NSObject { NSString *_peopleName; int _peopleAge; int _peopleSex; } 一般来说,成员变量是不可以在外部类进行调用的,但是如果在声明成员变量时候加上@publ

Java成员变量与属性的区别,简单最易懂的解释!!!

例一: 一个Student pojo类: public class Student{ private String name; private int age; public String getName(){ return this.name; } public void setName(String name){ this.name = name; } public int getAge(){ return this.age; } public void setAge(int age){ t

Objective-C中类的成员变量与属性

在Objective-C的类与对象的概念中. 成员变量与属性的区别与联系一直没有搞清楚. 直到学习了慕课网上的这个课程Objective-C面向对象初体验, 才算真正有了点感觉了. 最关键的结论就是: 类内使用成员变量{}, 类外使用属性@property. 成员变量 成员变量及其get方法. 首先, 我们来看下基本的类成员变量及其使用. // People.h @interface People : NSObject { NSString *_peopleName; } @end 在.m中不做

刨根问底Objective-C Runtime(4)- 成员变量与属性

http://chun.tips/blog/2014/11/08/bao-gen-wen-di-objective[nil]c-runtime(4)[nil]-cheng-yuan-bian-liang-yu-shu-xing/ 上一篇笔记讲述了objc runtime中消息和Category的细节,本篇笔记主要是讲述objc runtime的 成员变量和属性. 习题内容 下面代码会? Compile Error / Runtime Crash / NSLog…? @interface Sark

类的成员变量和属性描述

0x 01 .类的属性 property 类的属性即是通过@property声明的属性.属性是类型为objc_property的一个结构体.该结构体封装了属性的信息 比如属性的名字,属性的类型,属性的可读写,非原子/原子属性等. 1).获取一个类的属性列表方法:OBJC_EXPORT objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount)入参是一个类的class对象,一个是用于统计属性数量的整形数的地址

C++ 通过对象方式 、指针方式两种方式去访问成员变量(属性或者方法)

准备 1.在VS中新建一个项目-Viscal C++ ---常规--空项目 2.建立一个.h的头文件 定义一个类 声明其成员(C#中的属性和方法) #include<iostream> #include<string> using namespace std; class Person { public: void setId(int id); int getId(); void setName(string name); string getName(); void setAge

Objective-C之成魔之路【8-訪问成员变量和属性】

郝萌主倾心贡献,尊重作者的劳动成果.请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 訪问成员变量 从面向对象的封装角度考虑问题, 要想訪问类中的成员变量, 是要通过方法訪问的, 成员变量前面要有作用域限定符(protected, public, private) , 这些存取权限修饰符我们将在后面介绍. 成员变量的訪问, 是通过读取方法(getter) 和设定方法(setter). 訪问成员