Java中的引用变量是什么?

访问对象的唯一方法是通过引用变量。引用变量被声明为特定类型,并且该类型永远不能更改。引用变量可以声明为静态变量,实例变量,方法参数或局部变量。

声明为final的引用变量永远不能重新分配为引用其他对象。可以修改对象内的数据,但不能更改引用变量。

package org.nhooo.example.basic;

public class ReferenceDemo {
    public static void main(String[] args) {
        // 引用变量声明
        Reference ref1, ref2;

        // ref3被声明为final,不能重新分配ref3
        // 或引用不同的对象
        final Reference ref3;

        // 为ref1分配对象Reference
        ref1 = new Reference("This is the first reference variable", 1);

        // 对象引用的访问方法getNumber()
        // 变量ref1
        int number = ref1.getNumber();
        System.out.println("number= " + number);

        // 为ref2分配对象Reference
        ref2 = new Reference("This is the second reference variable", 2);

        // 传递ref2作为printText()方法的方法参数
        ReferenceDemo.printText(ref2);

        // 为ref3分配对象Reference
        ref3 = new Reference("This is the third reference variable", 3);

        // 尝试重新分配ref3将导致编译时错误
        // ref3 = new Reference(“尝试重新分配”,3);"Try to reassign", 3);

    }

    public static void printText(Reference reference) {
        String text = reference.getText();
        System.out.println(text);
    }
}
package org.nhooo.example.basic;

public class Reference {
    private int number;
    private String text;

    Reference(String text, int number) {
        this.text = text;
        this.number = number;
    }

    public String getText() {
        return text;
    }

    public int getNumber() {
        return number;
    }
}