Hallo zusammen,
ich habe hier ein recht einfaches Beispiel, das das Prinzip der eigenen Klassen verdeutlichen soll (aus "Java ist auch eine Insel"). Allerdings wird in Ecplise immer eine Fehler angezeigt. Und zwar unterstreicht er das Objekt pwd (den Teil: "new Password()"). Aber warum?? Wenn ich das Objekt außerhalb der main Methode erstelle funktionniert es.
Fehlermeldung: No enclosing instance of type Squared is accessible. Must qualify the allocation with an enclosing instance of type Squared (e.g. x.new A() where x is an instance of Squared).
ich habe hier ein recht einfaches Beispiel, das das Prinzip der eigenen Klassen verdeutlichen soll (aus "Java ist auch eine Insel"). Allerdings wird in Ecplise immer eine Fehler angezeigt. Und zwar unterstreicht er das Objekt pwd (den Teil: "new Password()"). Aber warum?? Wenn ich das Objekt außerhalb der main Methode erstelle funktionniert es.
Code:
public class Squared {
public static void main( String[] args )
{
Password pwd = new Password();
pwd.setPassword( "", "TeutoburgerWald" );
pwd.setPassword( "TeutoburgerWald", "Doppelkeks" );
pwd.setPassword( "Dopplerkeks", "panic" );
}
class Password
{
private String pass = "";
public void setPassword( String oldpass, String newpass )
{
if ( oldpass != null && oldpass.equals(pass) )
{
pass = newpass;
System.out.println( "Passwort gesetzt." );
}
else
System.out.println( "Passwort konnte nicht gesetzt werden." );
}
}
}
Fehlermeldung: No enclosing instance of type Squared is accessible. Must qualify the allocation with an enclosing instance of type Squared (e.g. x.new A() where x is an instance of Squared).