.valueOf使用另一个类的私有变量

时间:2015-05-26 19:27:55

标签: java class private tostring value-of

BaseExample Class(我不允许在此示例中保护变量):

public class BaseExample {
    private int a;

    public BaseExample(int inVal) {
        a = inVal;
    }

    public BaseExample(BaseExample other){
        a = other.a;
    }

    public String toString(){
        return String.valueOf(a);
    }


}

DerivedExample类:

public class DerivedExample extends BaseExample {
    private int b;



public DerivedExample(int inVal1, int inVal2){
        super(inVal2);
        a = inVal2;

    }
}

超级方法奏效了。现在,如果我被问到这个问题,我该怎么称呼它:

**Returns a reference to a string containing the value stored in the inherited varible a followed by a colon followed by the value stored in b public String toString()**

我试过这个:

public String toString(){
            int base = new BaseExample(b);

            return String.valueOf(base:this.b);

        }

如果我放了两个返回,它会给我一个无法访问代码的错误。如果我把一个超级内部值,它不起作用。而这也行不通。这是怎么执行的?

1 个答案:

答案 0 :(得分:1)

我认为你误解了这个要求,你需要打印位于父类中的a,它由与当前类中的b连接的冒号分隔。

String.valueOf(base:this.b)

这是不正确的语法,你想要的是

super.toString() + ":" + this.b;