class C<S> {
private S testField;
public C(S testField) {
this.testField = testField;
}
public S getTestField() {
return testField;
}
}
class Test {
public static void main
(String[] args
) { C rawArray[] = new C[2];
rawArray[0] = new C<String>("oh hi Mark");
rawArray[1] = new C<Integer>(123123);
C<String> strArray[] = rawArray;
C<String> s1 = strArray[0];
C<String> s2 = strArray[1];
System.
out.
println(s1.
getTestField()); System.
out.
println(s2.
getTestField()); }
}
Y2xhc3MgQzxTPiB7CiAgICBwcml2YXRlIFMgdGVzdEZpZWxkOwoKICAgIHB1YmxpYyBDKFMgdGVzdEZpZWxkKSB7CiAgICAgICAgdGhpcy50ZXN0RmllbGQgPSB0ZXN0RmllbGQ7CiAgICB9CgogICAgcHVibGljIFMgZ2V0VGVzdEZpZWxkKCkgewogICAgICAgIHJldHVybiB0ZXN0RmllbGQ7CiAgICB9Cn0KCmNsYXNzIFRlc3QgewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIEMgcmF3QXJyYXlbXSA9IG5ldyBDWzJdOwogICAgICAgIHJhd0FycmF5WzBdID0gbmV3IEM8U3RyaW5nPigib2ggaGkgTWFyayIpOwogICAgICAgIHJhd0FycmF5WzFdID0gbmV3IEM8SW50ZWdlcj4oMTIzMTIzKTsKCiAgICAgICAgQzxTdHJpbmc+IHN0ckFycmF5W10gPSByYXdBcnJheTsKICAgICAgICBDPFN0cmluZz4gczEgPSBzdHJBcnJheVswXTsKICAgICAgICBDPFN0cmluZz4gczIgPSBzdHJBcnJheVsxXTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oczEuZ2V0VGVzdEZpZWxkKCkpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihzMi5nZXRUZXN0RmllbGQoKSk7CiAgICB9Cn0=