Java在实例化抽象类时更改变量

时间:2016-02-19 01:34:26

标签: java class abstract

我正在尝试创建一个抽象类,当我实例化该类的新对象时,我正在尝试在类中设置一个变量。

abstract class TestClass { // Class I'm trying to change a variable in.
    public String testString;
}

public class Main {
    public static void main(String[] args) {
        TestClass t = new TestClass() {
            public String testString = "TEST"; // Where I'm trying to set it
        };
        System.out.println(t.testString);
    }
}

输出:

null

我不想输出“TEST”。

有没有办法使用像我正在尝试的那样的方法来实现这一目标?

2 个答案:

答案 0 :(得分:5)

您应该使用初始化程序块:

TestClass t = new TestClass() {
    { // initializer block
        testString = "TEST";
    }
};

答案 1 :(得分:0)

public String testString = "test";

在Main中的main函数中创建一个变量,该变量与您想要更改的变量分开。

尝试:

Super.testString = "test"; 

从Super。

更改testString的值
相关问题