Feld initialisieren, bevor der Superkonstruktor ausgeführt wird?Java

Java-Forum
Anonymous
 Feld initialisieren, bevor der Superkonstruktor ausgeführt wird?

Post by Anonymous »

Gibt es in Java eine Möglichkeit, ein Feld zu initialisieren, bevor der Superkonstruktor ausgeführt wird?

Selbst die hässlichsten Hacks, die mir einfallen können, werden vom Compiler abgelehnt:

Code: Select all

class Base
{
Base(String someParameter)
{
System.out.println(this);
}
}

class Derived extends Base
{
private final int a;

Derived(String someParameter)
{
super(hack(someParameter, a = getValueFromDataBase()));
}

private static String hack(String returnValue, int ignored)
{
return returnValue;
}

public String toString()
{
return "a has value " + a;
}
}
Hinweis: Das Problem verschwand, als ich von der Vererbung zur Delegation wechselte, aber ich würde es trotzdem gerne wissen.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post