class Ideone {
private static Value createValue
(String data
) { System.
out.
println("called createValue(\"" + data
+ "\")"); return new Value(data);
}
private static Value[] values = {
createValue("A"),
createValue("B"),
createValue("C"),
null
};
public static void main
(String[] args
) { System.
out.
println("called main(String[] args)"); System.
out.
println(values
[1]); System.
out.
println(values
[2].
data); System.
out.
println(values
[3]); }
}
class Value {
this.data = data;
}
System.
out.
println("called Value(\"" + data
+ "\").toString()"); return this. data;
}
}
Y2xhc3MgSWRlb25lIHsKCiAgICBwcml2YXRlIHN0YXRpYyBWYWx1ZSBjcmVhdGVWYWx1ZShTdHJpbmcgZGF0YSkgewogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiY2FsbGVkIGNyZWF0ZVZhbHVlKFwiIiArIGRhdGEgKyAiXCIpIik7CiAgICAgICAgcmV0dXJuIG5ldyBWYWx1ZShkYXRhKTsKICAgIH0KCiAgICBwcml2YXRlIHN0YXRpYyBWYWx1ZVtdIHZhbHVlcyA9IHsKICAgICAgICBjcmVhdGVWYWx1ZSgiQSIpLAogICAgICAgIGNyZWF0ZVZhbHVlKCJCIiksCiAgICAgICAgY3JlYXRlVmFsdWUoIkMiKSwKICAgICAgICBudWxsCiAgICB9OwoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImNhbGxlZCBtYWluKFN0cmluZ1tdIGFyZ3MpIik7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHZhbHVlc1sxXSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHZhbHVlc1syXS4gZGF0YSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHZhbHVlc1szXSk7CiAgICB9Cn0KCmNsYXNzIFZhbHVlIHsKICAgIHB1YmxpYyBTdHJpbmcgZGF0YTsKCiAgICBwdWJsaWMgVmFsdWUoU3RyaW5nIGRhdGEpIHsKICAgICAgICB0aGlzLmRhdGEgPSBkYXRhOwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJjYWxsZWQgVmFsdWUoXCIiICsgZGF0YSArICJcIikudG9TdHJpbmcoKSIpOwogICAgICAgIHJldHVybiB0aGlzLiBkYXRhOwogICAgfQp9Cg==