如果局部变量与实例变量同名,那么如何在局部变量的作用域内引用实例变量?

public class Sample{ private int a=1;  //实例变量

 public void b() {  int a=2;  //局部变量  System.out.println("局部变量:a="+a);  System.out.println("实例变量:a="+this.a);//局部变量的作用域内引用实例变量:this.变量名 }  public static void main(String[] args) {  new Sample().b(); }}
时间: 2024-10-13 09:36:11

如果局部变量与实例变量同名,那么如何在局部变量的作用域内引用实例变量?的相关文章

javascript在私有作用域中定义私有变量和私有函数 (1)

javascript没有私有成员,但是有私有变量,所有对戏那个属性都是公有的 任何在函数中定义的变量,都可以认为是私有变量,因为函数内部不能访问. 私有变量包括:函数的参数.局部变量.函数内部定义的其他函数 - 在私有作用域中定义私有变量和私有函数 function MyObject(){ //私有变量和私有函数 var privateVariable=10; function privateFunction(params) { return false } //特权方法----有权访问私有变量

张超超OC基础回顾02_成员变量(属性),局部变量,全局变量的区别

成员变量: 写在类声明的大括号中的变量, 我们称之为 成员变量(属性, 实例变量) 成员变量只能通过对象来访问 注意: 成员变量不能离开类, 离开类之后就不是成员变量 成员变量不能在定义的同时进行初始化 存储: 堆(当前对象对应的堆的存储空间中) 存储在堆中的数据, 不会被自动释放, 只能程序员手动释放 @interface Person : NSObject { int _age; NSString *_name; } @end  全局变量: 写在函数和大括号外部的变量, 我们称之为全局变量

C/C++语言变量问题(全局变量、局部变量、静态全局变量、静态局部变量)

1.C/C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为6种: 全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件作用域. 从作用域看: 1>全局变量具有全局作用域.全局变量只需在一个源文件中定义,就可以作用于所有的源文件.当然,其他不包含全局变量定义的源文件需要用extern 关键字再次声明这个全局变量. 2>静态局部变量具有局部作用域,它只被初始化一次,自从第一次被初始化直到程序运行结束都一直存在,它和全局变量的区别在于全局变量对所有的函数都是可见的

javascript函数中的实例对象、类对象、局部变量(局部函数)

定义 function Person(national,age) { this.age = age; //实例对象,每个示例不同 Person.national = national; //类对象,所用实例公用 var bb = 0; //局部变量,外面不能访问(类似局部函数) } 调用 var p = new Person("中国", 29); document.writeln("age:" + p.age); document.writeln("obj

(原创)c#学习笔记06--函数02--变量的作用域01--其他结构中变量的作用域

6.2  变量的作用域 在上一节中,读者可能想知道为什么需要利用函数交换数据.原因是C#中的变量仅能从代码的本地作用域访问.给定的变量有一个作用域,访问该变量要通过这个作用域来实现. 在上一节中,读者可能想知道为什么需要利用函数交换数据.原因是C#中的变量仅能从代码的本地作用域访问.给定的变量有一个作用域,访问该变量要通过这个作用域来实现.代码如下: class Program { static void Write() { Console.WriteLine("myString = {0}&q

Python3.2官方文档翻译--作用域和命名空间实例

6.2.1 作用域和命名空间实例 以下的实例主要用来示范怎样引用不同的作用域和命名空间,keywordglobal和nonlocalru怎样影响变量绑定. 实例执行结果是: After local assignment: test spam After nonlocal assignment: nonlocal spam After global assignment: nonlocal spam In global scope: global spam 注意局部赋值(这是默认的)不能改变sco

js 作用域链&内存回收&变量&闭包

闭包主要涉及到js的几个其他的特性:作用域链,垃圾(内存)回收机制,函数嵌套,等等 一.作用域链:函数在定义的时候创建的,用于寻找使用到的变量的值的一个索引,而他内部的规则是,把函数自身的本地变量放在最前面,把自身的父级函数中的变量放在其次,把再高一级函数中的变量放在更后面,以此类推直至全局对象为止.当函数中需要查询一个变量的值的时候,js解释器会去作用域链去查找,从最前面的本地变量中先找,如果没有找到对应的变量,则到下一级的链上找,一旦找到了变量,则不再继续.如果找到最后也没找到需要的变量,则

在成员函数内定义static变量

成员函数内的局部变量可以是static的.如果将成员函数内的某个局部变量定义为静态变量,该类的所有对象在调用这个成员函数时将共享这个变量. 例3-40   本例在成员函数m中定义了一个static变量s,由于s定义在程序块内,它拥有程序块范围,因此它只能在m内部访问.每调用m一次,s就会相应地增加一次.又因为m是C的成员函数,所以,C的所有对象都共享这个静态局部变量.这样,对m的每一次调用访问的都是同一个s.相反,对于非静态局部变量x来说,每个C对象都拥有一个x.所以,在main中第一次调用c1

shell if判断(曾经被一个字符串相等的判断纠结半小时,最后只是if后少了个空格!) 和 awk引用外部变量判断

一.if判断 数字: $A=12 $B=15 if(("$A"<"$B")) if(("$A"=="$B")) 字符串: $A="HELLO" $B="WORLD" if [ "$A" = "FACT_LOGIN_USER" ] if [ "$A" = "$B" ] PS:字符串比较的时候注意 'if'