Objective-C语法之static关键字的那些事儿
学习过Java 或者 C 语言的朋友应该很清楚static关键字吧?在某个类中声明一个static 静态变量, 其他类中想使用它或者修改它不用new 这个对象 ,直接使用它的类名方可直接拿到这个静态变量的对象,遍可以在其他类中任意修改这个变量的数值。
在Objective-C 的语法中声明后的static静态变量在其他类中是不能通过类名直接访问的,它的作用域只能是在声明的这个.m文件中 。不过可以调用这个类的方法间接的修改这个静态变量的值。MOMO通过一个例子详细的解析一下static关键字的使用。
类的创建方法就不多说了,之前的文章有写过。
MyClass.h
警告: static 写在interface外面编译是没有错误的,但是编译器会报警告,这么说这样的写法是不被编辑器认可的。
错误:static 写在interface里面会直接报错,显然这样的语法是不被认可的。
+(void) addCount; 各位盆友们注意一下这法方法前面的+号。 它的意思是标致这个方法为静态方法,标志+号后不用创建这个对象通过类名可以直接调用这个静态方法。 而之前方法前用过的-号,标志-号后的方法必须通过本类的对象或者在本来中才可以使用。
MyClass.m
static关键字声明的变量必须放在implementation外面,或者方法中,如果不为它赋值默认为0,它只在程序开机初始化一次。
+(void)addCount 因为标识了+号,所以这个方法无需使用这个类的对象调用。直接使用类名方可调用这个方法。
main.m
无需alloc这个对象,直接使用MyClass类名方可直接调用addCount方法。
运行这个程序,初始化赋值为100 ,调用方法的时候++,所以打印出来的数值为101。
MyClass.m
将static整型变量定义在方法中,并且为其赋值100。
main.m
循环5次调用这个方法,看看结果是什么样字,结果肯定是101吧。。
程序员不要相信任何人说的任何有关程序的话,一定相信自己,相信自己眼睛看到的一切,哇咔咔~~
可见即使将static静态变量写在方法中,它的初始化也是在程序开机时,程序一旦启动以后static是不能在创建的。所以程序在这里调用了5次这个方法,sCount的值并没有因为重新创建static sCount而改变,而是将sCount的值一直存在内存中。
static关键字在任何语言中都是非常重要的,它有优点也有缺点,善用static 关键字是一个不错地选择哦,哇咔咔~
前几天上不了网 悲剧啊~~ 今天去按摩店 针灸 拔火罐 按摩 刮痧 太爽了,MOMO向广大盆友们问好,有什么都没有有一个好身体重要,多去健身 保健 锻炼身体 搞IT的盆友们 你们懂得 嘿嘿。。
分享到:
相关推荐
Objective-C基础教程:1天玩转Objective-C语法
启动Ultraedit,依次打开:高级(A) --> 配置(C) --> 编辑器显示 --> 语法着色。找到文档的完整目录名称所指示的目录, 然后把objective-c.uew文件放在对应的目录下即可。
这儿的运行时系统扮演的角色类似于Objective-C语言的操作系统,Objective-C基于该系统来工作。本文档将具体介绍NSObject类以及Objective-C程序是如何和运行时系统交互的。特别地,本文档还给出来怎样在运行时动态地加
Objective-C语法总结(第一版)
Objective-C 基础语法 Objective-C 基础语法
Objective-C语法之走进iphone的开发世界那些事儿 简单的ios开发界面,欢迎大家下载阅读。
这是一个基于Objective-C语言的基础案例集 旨在用于给初学者快速了解Objective-C语言的语法 .zip
XCode、Objective-C、Cocoa
Objective-C语言的许多决策可以在编译和运行时执行。只要有可能,它是动态的。这意味着Objective-C语言不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。Runtime系统是一种用于Objective-C语言的操作系统...
这是一个基于Objective-C语言的基础案例集。旨在用于给初学者快速了解Objective-C语言的语法。.zip
Objective-C语法之异常处理
《objective-c程序设计》通过大量的实例系统地介绍了objective-c语言的基本概念、语法规则、框架、类库及开发环境。读者在阅读《objective-c程序设计》后,可以掌握objective-c语言的基本内容,并进行实际的iphone/...
通过学习Objective-C的基本语法、类和对象、控制流程和方法等内容,你将能够编写简单的Objective-C程序并逐渐掌握更复杂的概念。继续学习和实践,你将能够开发各种类型的应用程序,并为用户提供出色的体验。祝你在...
Objective-C 是苹果公司采用的主要编程语言之一,也是开发 macOS 和 iOS 应用程序的主要语言之一。Objective-C 是一种强大而灵活的编程语言,它结合了 C 语言的性能和灵活性以及面向对象编程的特性。本教程提供了 ...
iOS开发之Objective-C语法快速参考(PDF文档).
Objective-C的语法与Cocoa框架.pdf,挺不错的教程
用Objective-C语言实现了各种设计模式,收集各种例子,方便大家学习和普及设计模式。.zip用Objective-C语言实现了各种设计模式,收集各种例子,方便大家学习和普及设计模式。.zip用Objective-C语言实现了各种设计...
《Objective-C 程序设计(第4版)》作者假设读者没有面向对象程序语言或者C语言(Objective-C基础)编程经验,因此,初学者和有经验的程序员都可以使用这本《Objective-C 程序设计(第4版)》学习Objective-C。...
帮助C++开发者,快速学习Objective-C语言核心语法。 一个非常实用的帮助文档