olkoon
class Luokka
{
private class l1
{
}
private class l2
{
}
...
private class lN
{
}
public Luokka
{
koodinpätkä tähän???
}
}
Kysymys kuuluu, miten luodaan reflektiivisesti kaikkien sisäluokkien l1..lN instanssit (eli siis ilman new operaattoria)?
class Luokka
{
private class l1
{
}
private class l2
{
}
...
private class lN
{
}
public Luokka
{
koodinpätkä tähän???
}
}
Kysymys kuuluu, miten luodaan reflektiivisesti kaikkien sisäluokkien l1..lN instanssit (eli siis ilman new operaattoria)?
Vastaukset 2
Vanhimmat
--- ESIMERKKI ALKAA ---
public class Luokka {
private class l1 {
public l1() {
System.out.println("Uusi ilmentymä: l1");
}
}
private class l2 {
public l2() {
System.out.println("Uusi ilmentymä: l2");
}
}
private class l3 {
public l3() {
System.out.println("Uusi ilmentymä: l3");
}
}
public Luokka() throws Exception {
Object[] argumentit = { this };
for (Class luokka : this.getClass().getDeclaredClasses())
luokka.getConstructors()[0].newInstance(argumentit);
}
public static void main(String[] args) throws Exception {
new Luokka();
}
}
--- ESIMERKKI LOPPUU ---
Olihan tuosta apua, tuo this-argumentti oli tosiaan unohtunut minulta. Kiithän!