Java中final修饰引用:引用不可变,内容可变详解
在Java中,如果使用final关键字修饰引用,表示该引用不可变。这意味着一旦引用指向了一个对象,就不能再将其指向其他不同的对象。但是,引用指向的对象本身的内容是可变的。\n\n下面是一个示例代码:\n\njava\npublic class Example {\n public static void main(String[] args) {\n final int[] array = {1, 2, 3}; // 使用final修饰引用\n\n System.out.println(Arrays.toString(array)); // 输出:[1, 2, 3]\n\n array[0] = 4; // 引用指向的内容可变\n System.out.println(Arrays.toString(array)); // 输出:[4, 2, 3]\n\n // 编译错误,不能将final引用指向其他不同的对象\n // array = new int[]{5, 6, 7};\n }\n}\n\n\n在上述示例中,我们使用final关键字修饰了array引用,表示该引用不可变。但是,我们仍然可以修改array引用指向的对象的内容,例如将array[0]的值从1修改为4。但是,由于引用是不可变的,我们不能将array引用指向其他不同的对象,否则会导致编译错误。
原文地址: https://www.cveoy.top/t/topic/qpxW 著作权归作者所有。请勿转载和采集!