String类的概念和不变性

String类的概念和不变性
        * a:String类
            * API中的String类的描述,发现String 类代表字符串
            * Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
            * 字符串是常量,在创建之后不能更改
            * 其实就是说一旦这个字符串确定了,那么就会在内存区域中就生成了这个字符串。字符串本身不能改变,但str变量中记录的地址值是可以改变的。
            * 源码分析,String类底层采用的是字符数组:
                private final char value[]
                private 修饰说明value只能在String类内部使用,而且又没有提供get方法,所以外部无法获取value数组,就无法改变数组中元素的值
                final修饰说明value是常量,一旦创建,就不能被改变,value一旦被初始化成某个数组,将永远指向这个数组,不可能再指向其它的数组了
                
        * b: 案例代码

  /*
             *   String类特点:
             *     一切都是对象,字符串事物 "" 也是对象
             *     类是描述事物,String类,描述字符串对象的类
             *     所有的 "" 都是String类的对象
             *     
             *     字符串是一个常量,一旦创建,不能改变
             */
            public class StringDemo {
                public static void main(String[] args) {
                    //引用变量str执行内存变化
                    //定义好的字符串对象,不变
                    String str = "itcast";
                    System.out.println(str);
                    str = "itheima";
                    System.out.println(str);
                    
                    
                }
            }



 

猜你喜欢

转载自blog.csdn.net/fang0321/article/details/83749355
今日推荐