String变量应该定义在方法外还是方法内

编程入门 行业动态 更新时间:2024-10-13 08:19:53

String变量应该定义在<a href=https://www.elefans.com/category/jswz/34/1771314.html style=方法外还是方法内"/>

String变量应该定义在方法外还是方法内

描述

之前有做过测试String变量定义在方法外和方法内地址是一样的。但是时间久了,自己又怀疑了,所以开了这篇博客,记录下

结果

变量定义在方法内与方法外是一样的,测试代码如下

测试代码

代码

/*** @author :renpan* @version :v1.0* @class :com.luomo.shopping* @date :2016-04-01 10:30* @description:测试类*/
public class Test {public static void main(String[] args) {String st="123";//---调用一般方法new Test().stringParameter("0");new Test().stringParameter("1");new Test().stringParameter("1");new Test().stringParameter("2");new Test().stringParameter(st);new Test().stringParameter(st);//---调用静态方法staticStringParameter("0");staticStringParameter("1");staticStringParameter("1");staticStringParameter("2");staticStringParameter(st);staticStringParameter(st);}//---一般方法private String fs;private void stringParameter(String st) {System.out.println("Test.stringParameter----------传入的参数值:"+st);System.out.println("Test.stringParameter 传入的参数地址:"+st.hashCode());String ps = st;System.out.println("Test.stringParameter 方法中变量地址:"+ps.hashCode());fs = st;System.out.println("Test.stringParameter 全局变量地址:"+fs.hashCode());}//---静态方法private static String sfs;//static field stringprivate static void staticStringParameter(String st) {System.out.println("Test.staticStringParameter----------传入的参数值:"+st);System.out.println("Test.staticStringParameter 传入的参数地址:"+st.hashCode());String sps = st;//static parameter stringSystem.out.println("Test.staticStringParameter 方法中变量地址::"+sps.hashCode());sfs = st;System.out.println("Test.staticStringParameter 全局变量地址::"+sfs.hashCode());}
}

输出信息

Test.stringParameter----------传入的参数值:0
Test.stringParameter 传入的参数地址:48
Test.stringParameter 方法中变量地址:48
Test.stringParameter 全局变量地址:48
Test.stringParameter----------传入的参数值:1
Test.stringParameter 传入的参数地址:49
Test.stringParameter 方法中变量地址:49
Test.stringParameter 全局变量地址:49
Test.stringParameter----------传入的参数值:1
Test.stringParameter 传入的参数地址:49
Test.stringParameter 方法中变量地址:49
Test.stringParameter 全局变量地址:49
Test.stringParameter----------传入的参数值:2
Test.stringParameter 传入的参数地址:50
Test.stringParameter 方法中变量地址:50
Test.stringParameter 全局变量地址:50
Test.stringParameter----------传入的参数值:123
Test.stringParameter 传入的参数地址:48690
Test.stringParameter 方法中变量地址:48690
Test.stringParameter 全局变量地址:48690
Test.stringParameter----------传入的参数值:123
Test.stringParameter 传入的参数地址:48690
Test.stringParameter 方法中变量地址:48690
Test.stringParameter 全局变量地址:48690
Test.staticStringParameter----------传入的参数值:0
Test.staticStringParameter 传入的参数地址:48
Test.staticStringParameter 方法中变量地址::48
Test.staticStringParameter 全局变量地址::48
Test.staticStringParameter----------传入的参数值:1
Test.staticStringParameter 传入的参数地址:49
Test.staticStringParameter 方法中变量地址::49
Test.staticStringParameter 全局变量地址::49
Test.staticStringParameter----------传入的参数值:1
Test.staticStringParameter 传入的参数地址:49
Test.staticStringParameter 方法中变量地址::49
Test.staticStringParameter 全局变量地址::49
Test.staticStringParameter----------传入的参数值:2
Test.staticStringParameter 传入的参数地址:50
Test.staticStringParameter 方法中变量地址::50
Test.staticStringParameter 全局变量地址::50
Test.staticStringParameter----------传入的参数值:123
Test.staticStringParameter 传入的参数地址:48690
Test.staticStringParameter 方法中变量地址::48690
Test.staticStringParameter 全局变量地址::48690
Test.staticStringParameter----------传入的参数值:123
Test.staticStringParameter 传入的参数地址:48690
Test.staticStringParameter 方法中变量地址::48690
Test.staticStringParameter 全局变量地址::48690

更多推荐

String变量应该定义在方法外还是方法内

本文发布于:2024-02-06 02:39:51,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1745587.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:方法   变量   定义   String

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!