/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Ideone i = new Ideone();
Init test = i.new Init();
for(Field f
: test.
getClass().
getFields()) {
System.
out.
println("nombre instancia : " + f.
getName());
if (f.getType() == Test.class) {
Class<?> clazz = Ideone.Test.class;
Method method
= clazz.
getMethod("getNombre"); Ideone.Test typ = (Ideone.Test)f.get(test);
method.invoke(typ);
System.
out.
println("nombre que contiene la variable test : " + typ.
getNombre()); }
}
}
private class Init{
public Test sPedro = new Test("Pedro");
public Test sPablo = new Test("Pablo");
}
private class Test{
test = nombre;
}
return test;
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CiAgICAgCmltcG9ydCBqYXZhLmxhbmcucmVmbGVjdC5GaWVsZDsKaW1wb3J0IGphdmEubGFuZy5yZWZsZWN0Lk1ldGhvZDsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uLCBqYXZhLmxhbmcuSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uLCBqYXZhLmxhbmcuSWxsZWdhbEFjY2Vzc0V4Y2VwdGlvbgoJewoKICAgICAgICAgSWRlb25lIGkgPSBuZXcgSWRlb25lKCk7CiAgICAgICAgIEluaXQgdGVzdCA9IGkubmV3IEluaXQoKTsKICAgICAgICAgCiAgICAgICAgIGZvcihGaWVsZCBmIDogdGVzdC5nZXRDbGFzcygpLmdldEZpZWxkcygpKSB7CiAgICAgCQkKICAgICAJCVN5c3RlbS5vdXQucHJpbnRsbigibm9tYnJlIGluc3RhbmNpYSA6ICIgKyBmLmdldE5hbWUoKSk7CiAgICAgCQkKICAgICAJCWlmIChmLmdldFR5cGUoKSA9PSBUZXN0LmNsYXNzKSB7CiAgICAgCQkgICAgCiAgICAgCQkJQ2xhc3M8Pz4gY2xhenogPSBJZGVvbmUuVGVzdC5jbGFzczsKICAgICAgCQkJTWV0aG9kIG1ldGhvZCA9IGNsYXp6LmdldE1ldGhvZCgiZ2V0Tm9tYnJlIik7CgkJICAgICAgICBJZGVvbmUuVGVzdCB0eXAgPSAoSWRlb25lLlRlc3QpZi5nZXQodGVzdCk7CgkJICAgICAgICAKICAgICAgCQkJbWV0aG9kLmludm9rZSh0eXApOwogICAgICAJCQkKICAgICAgICAgIAkJU3lzdGVtLm91dC5wcmludGxuKCJub21icmUgcXVlIGNvbnRpZW5lIGxhIHZhcmlhYmxlIHRlc3QgOiAiICsgdHlwLmdldE5vbWJyZSgpKTsKICAgICAJCX0KICAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICBwcml2YXRlIGNsYXNzIEluaXR7CiAgICAgIAkKICAgICAgCXB1YmxpYyBUZXN0IHNQZWRybyA9IG5ldyBUZXN0KCJQZWRybyIpOwogICAgICAJcHVibGljIFRlc3Qgc1BhYmxvID0gbmV3IFRlc3QoIlBhYmxvIik7CiAgICAgCiAgICAgIAkKICAgICAgfQogICAgICBwcml2YXRlIGNsYXNzIFRlc3R7CiAgICAgIAkKICAgICAgCVN0cmluZyB0ZXN0OwogICAgICAJCiAgICAgIAlwdWJsaWMgVGVzdChTdHJpbmcgbm9tYnJlKXsKICAgICAgCSAgICB0ZXN0ID0gbm9tYnJlOwogICAgICAJfQogICAgICAJcHVibGljIFN0cmluZyBnZXROb21icmUoKXsKICAgICAgCQlyZXR1cm4gdGVzdDsKICAgICAgCX0KICAgICAgfQogICAgfQ==