问题阐述
在Java语言中提供了多种修饰类型,如私有类型private、受保护的类型protected、公共类型public等,请问局部变量可以定义私有修饰类型吗?
专家解答
在Java语言中,可以使用private、protected和public修饰类、成员变量和方法,但是不可以使用private、protected和public修饰局部变量。final可以用来修饰局部变量,但这样修饰后它会变为常量。
例如:
packagecom.mingrisoft;publicclassSomething{voiddoSomething(){privateStrings="";//使用private修饰局部变量,出错intl=s.length();}}说明:
上面的代码段在doSomething()方法中使用关键字private修饰了局部变量s,由于Java语言中局部变量不允许使用private、protected和public进行修饰,因此程序将无法通过编译,当鼠标移动到局部变量s处时,将显示提示文本,结果如图3.3所示。
专家点评
局部变量只在定义它的方法内部有效,并且不能使用private、protected和public等修饰符进行修饰,当局部变量所在的方法调用结束后,Java虚拟机将自动释放局部变量所占用的资源。