Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich versuche mich gerade in einem großen Projekt zurechtzufinden. Dort gibt es folgendes Konstrukt:
Java:
public class Klasse{
...
protected void funktion1(){
...
private Objekt1 funktion2(...){
...
}
public Boolean funktion3(...){
...
}
...
}
...
}
Ich kenne Klassen in Klassen aber Methoden in Methoden habe ich noch nie gesehen. Wie sieht die Ausführung aus? Gibts dafür einen speziellen Namen? Oder hab ich irgendwas übersehen und das gibts eigentlich doch gar nicht.
Danke, das wars.
Irgendwo in der schlechten Formatierung und den unübersichtlichen Bezeichnern habe ich die anonyme Klasse gefunden.
Fürs nächste Mal weiß ich Bescheid.
Ich mach das auch ab und an. Wenn ich zwei Instanzen des Listeners/Handlers brauche, oder -- den Fall gibts öfter mal -- einen Listener der eigentlich klein ist aber zwei Interfaces implementieren muss. Das geht anonym ja nicht.
In der Problemstellung "Methode innerhalb Methode" aber oft wenig sinnvoll. Ich kann ja eine Methode, die ich innerhalb einer anonymen Klasse definiere, nicht ausserhalb derselben ansprechen .
Das Beispiel verstehe ich nicht. Du hast überhaupt keine Methode definiert (lediglich "run" implementiert). In meinem obigen Link zum "Quick Search" findest du ein Beispiel.
Das Beispiel verstehe ich nicht. Du hast überhaupt keine Methode definiert (lediglich "run" implementiert). In meinem obigen Link zum "Quick Search" findest du ein Beispiel.
Was Du gemeint hattest war mir schon klar. Aber Du hast es falsch ausgedrückt. Das Interface [c]Runnable[/c] deklariert eine Methode [c]run()[/c]. Die in [c]foo()[/c] erzeugte Klasse (ob nun anonym oder nicht spielt keine Rolle) definiert eine Methode [c]run()[/c]. Auf die in
Code:
Runnable
deklarierte aber in der anderen Klasse definierte Methode kann man von außen also über das Interface zugreifen.
wikipedia::Deklaration (Programmierung) hat gesagt.:
Häufig werden die Begriffe Deklaration und Definition gleichgesetzt. Die Definition ist allerdings ein Sonderfall der Deklaration. Bei Variablen spricht man von Definition, wenn der Compiler Code erzeugt, der entweder statisch (im Datensegment) oder dynamisch (zur Laufzeit) Speicherplatz für diese Variable reserviert. Bei Unterprogrammen spricht man von Definition, wenn an dieser Stelle der Quelltext des Unterprogramms angegeben ist, der vom Compiler übersetzt wird. Die Deklaration eines Unterprogramms ohne Definition wird auch oft als Prototyp bezeichnet.
Da der Gedanke klar ist, versteh ich nicht, wieso du meine Ausdrucksweise bemängelst ???:L (mit Wikipedia könnte ich auch meine Ausdrucksweise belegen).