- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.4.1.1成员变量和局的部变量
Java 基础篇
成员变量和局部变量
在Java语言中,根据定义变量的位置不同,可以将变量分为两大类:成员变量和局部变量。
成员变量与局部变量运行机制存在较大的差异。
成员变量指的是在类范围里定义的变量;
局部变量指的是在方法里定义的变量。
变量命名:多个有意义的单词连缀而成,
其中第一单词首字母小写,后面每个单词首字母大写,
成员变量被分为类属性和实例属性两种,定义属性时没有static修饰的就是实例属性,有static修饰的就是类属性。
其中类属性从这个类的准备阶段起开始存在,直到系统完全销毁这个类,类属性的作用域与这个类的生存范围相同;而实例属性则从该类的实例被创建起开始存在,直到系统完全销毁这个实例,实例属性的作用域与对应实例的生存范围相同。
访问方法:
只要类存在,程序就可以访问该类的类属性。语法格式:类.类属性
只要实例存在,程序就可以访问该实例的实例属性。语法格式:实例.实例属性
类属性的作用域比实例属性的作用域更大,实例属性随实例的存在而存在,而类的属性则随类的存在而存在,实例也可以访问类的属性,同一个类的所有实例访问类属性时,实际上访问是同一个类属性,因此他们实际上都是访问到该类的类属性。
局部变量根据定义形式的不同,可以分为如下三种:
形参:在定义方法签名时定义的变量,形参的作用域在整个方法内有效。
方法局部变量:在方法体内定义的局部变量,它的作用域是从定义该变量的地方生效,到该方法结束时失效。
代码块局部变量:在代码块中定义的局部变量,这个局部变量的作用域从定义该变量的地方生效,到该代码块结束时失效。
与成员变量不同的是,局部变量除了形参之外,都必须显示的初始化。也就是说,必须先给方法局部变量和代码块局部变量指定初始值,否则不可以访问它们。
Java允许局部变量和成员变量同名,如果方法里的局部变量和成员变量同名,局部变量会覆盖成员变量,如果需要在这个方法里引用被覆盖的成员变量,则可使用this(对于实例属性)或类名(对于类属性)作为调用者来限定访问成员变量。
一个类里不能定义两个同名的成员变量,即使一个是类属性,一个是实例属性也不行;一个方法里不能定义两个同名的局部变量,即使一个是方法局部变量,一个是代码局部变量都形参也不行。
变量的使用规则
对于Java初学者而言,何时应该使用类属性?何时应该使用实例属性?何时应该使用方法局部变量?何时应该使用代码块局部变量?这种选择比较困难,如果仅就程序的运行结果来看,大部分时间都可以直接使用类属性或者实例属性来解决问题,无须使用局部变量。但实际上这种做法肯定是错误的,因我们定义一个成员变量时,成员变量被放置在堆内存中,成员变量作用域将扩大到类存在范围或者对象存在的范围,这种范围扩大有两个害处:
增大了变量的生存时间,这将导致更大的系统开销
扩大了变量的作用域,这不得于提高程序的内聚性
程序中使用局部变量,也应该尽可能地缩小局部变量的作用范围,局部变量的作用范围越小,它在内存里停留时间就越短,程序运行性能越好,因此,能用代码块局部变量的地方,就坚决不要使用方法局部变量。
您可能关注的文档
- !微机原理讲的义(第15章总线技术).ppt
- !微机原理讲义(第5章计算机和外设的数据传输W的6).ppt
- ((人教的版))[[初三物理课件]]2008年初三物理《电学》复习ppt课件.ppt
- (TSG2011)防爆电梯年度自行的检查报告.doc
- (上下标正确-可直接打印)高中化学物质的状态和颜色·常见物质的颜色、俗名、用途总汇.doc
- (教育科学出版社)六的年级下册科学教案.doc
- (模拟)南疆四地州乡村教师教学信息的化应用培训考试试题及答案.docx
- (推的荐)压力表校验课件.ppt
- (江苏金的陵中学物理名师工作室)基于《力的分解》教学的评课要点——朱建廉(共26张PPT).ppt
- (的OK)第11章 文件.ppt
- 第一单元隋唐时期繁荣与开放的时代(原卷板).docx
- 第04讲测量平均速度(原卷版)-2022年新八年级物理暑假课(人教版).docx
- 第01课邓稼先(基础训练)(原卷版).docx
- Unit1单元小结-2022-2023学年七年级英语下册(牛津深圳版).docx
- 专题21书面表达考点4叙事描写类-2022年中考英语真题分项汇编(原卷版).docx
- 秘籍13 化学解答题(原卷版).docx
- 8.1牛顿第一定律2.docx
- 第13练感叹句-2022年七年级英语(牛津上海版).docx
- 儿童瑜伽培养小学生的身体协调性和集中力.pptx
- 第1章数学与我们同行全章复习与检测卷(4个知识点2种题型)(原卷版).docx
文档评论(0)