Vererbung

Status
Nicht offen für weitere Antworten.
L

Lisa1990

Gast
hi,


das hört sich jetz sicher total blöd an :cry:

nja, ich habe eine Klasse (GUI) und die Klasse text erbt davon. Dort arbeite ich mit einem String von der klasse GUI. Nun möchte ich wieder einen StringBuffer oder String der Klasse GUI geben und dort ausgeben.

kenn mich überhaupt nicht mehr aus :bahnhof: .... kann mir jemand helfen?
 

The_S

Top Contributor
Äh, die Klasse GUI existiert ja insofern nicht, da ja nur von ihr geerbt wurde. Aber mit super.machWas() kannst du auf Methoden und Variablen deiner Elternklasse zugreifen.
 
L

Lisa1990

Gast
ok, d.h. ich kann in einem jTextPane (Klasse GUI) keinen String von einer unterklasse ausgeben
 

The_S

Top Contributor
wenn das JTextPane über eine entsprechende (mindestens protected) Methode erreichbar ist, oder selber protected oder "sichtbarer" ist, dann schon.
 
L

Lisa1990

Gast
jetzt versteh ich gar nichts mehr

ich dachte super() nimmt man wenn man von einer Oberklasse eine Methode, etc. haben will (aber die Oberklasse will ja eine Variable von der Unterklasse)
 

The_S

Top Contributor
Hä? Die Oberklasse will eine Variable der Unterklasse :shock: ? Warum? Die Oberklasse kennt die Unterklasse doch gar nicht ???:L
 
L

Lisa1990

Gast
ist ja mein Problem

ich brauche eine Variable von meiner Oberklasse, mit der arbeite ich -> am Schluss will ich eine andere Variable wieder an die Oberklasse "zurückgeben"
 

The_S

Top Contributor
Also musst du von deiner Unterklasse auf eine Methode oder eine Variable deiner Oberklasse zugreifen, der du dann dein gewünschtes Objekt übergibst. Womit wir wieder bei super wären.
 
S

SlaterB

Gast
womit man wieder bei 'wie greift man auf die Oberklasse zu' wäre:
super.deineMethode
super.deinJTextPane

Vorsicht, Endlosschleife-Diskussion ;)
 

The_S

Top Contributor
Prinzipiell kannst du super auch weglassen, sofern du nicht entsprechende Variablen/Methoden in deiner Unterklasse überschrieben hast.
 

Kim Stebel

Bekanntes Mitglied
Du kannst auch in der Oberklasse eine Methode getThatStupidString() deklarieren, die dann in der Unterklasse überschrieben wird....
 
M

Mike17

Gast
das passt hier hinein und ich wollte keine neues Thema anfangen

Code:
public class fahrzeuge {
    public static void main(String[] args){
        System.out.print(auto);
    }
    public void getAuto(){
        String auto;
    }    
    public void Ergebnis(){
        System.out.print(count);
    }
    public void berechne(){
        int count;
}

public class auto extends fahrzeuge {
    public void getAuto(){
        String auto = "PKW";
    }
    public void berechne(){
        count = 25;
    }
}


kenn mich noch nicht so gut aus....warum funktz dieses bsp nicht?? kann mir bitte jemand helfen?


Gruß
Mike
 
S

SlaterB

Gast
Fehlermeldung?

Code:
public void berechne(){ 
        int count;
schließende Klammer?

Code:
public static void main(String[] args){ 
        System.out.print(auto); 
    }
Sinn?

edit:
ach das könnte ja für jede Operation so weitergehen, fast nichts macht irgendwie Sinn ;(
 
M

Mike17

Gast
ok, das war nur ein beispiel

bei mir ist es so das ich in der oberklasse einen String output habe (in der methode getString) und ich möchte den String in der Unterklasse ändern. Am Schluss soll der String dann in einer Methode message (oberklasse) ausgegeben werden.

ich dachte das funkz so das man in der unterklasse die methode von der oberklasse aufruft und den inhalt ändert[/code]
 

Reeny

Aktives Mitglied
Also, an den beiden Klassen stimmt einiges noch nicht ...


Hab ich das richtig verstanden, dass du in Fahrzeuge mit der Funktion "berechne()" eine Variable count definieren willst und die dann in der Methode der vererbten Klasse mit einem Wert füllen willst ... ? ???:L

Das geht so nicht (das selbe mit der Variable auto) ... Eine solche Variable musst du dann "globaler" anlegen, also zum Beispiel:

Code:
public class fahrzeuge {
   
    String auto;
    int count;

    //...

    public void getAuto(){
        // hier muss noch nichts stehen
    }   

    //...

    public void berechne(){
        // hier muss noch nichts stehen
    }
} 

public class auto extends fahrzeuge {
    public void getAuto(){
        auto = "PKW";
    }
    public void berechne(){
        count = 25;
    }
}

Die Klassen schreibt man in Java übrigens groß.
Außerdem fehlen noch Konstruktoren, wo du zum Beispiel die Standardwerte festlegst:

Code:
public class Fahrzeuge {
    
    public Fahrzeuge(){
        auto = "";
        count = 0;
    }

    //...
}

public class Auto extends Fahrzeuge {
    
    public Auto(){
        auto = "PKW";
        count = 25;
    }
}


Und wo ich schon mal dabei bin: Wenn du Variablen in einer Funktion änderst, bezeichnet man diese mit "setXyz()" und nicht mit "getXyz()"

:bahnhof:


Versuch das mal auszubessern und dann schauen wir uns das Progrämmchen nochmal an :)
 
M

Mike17

Gast
Danke

so ich habe das mal geändert, zeigt mir auch keine fehler mehr an...erst beim beim ausführen :(

vielleicht liegt es noch an dem: ich habe eine Methode actionPerformed und bei einer Bedingung wird Check aufgerufen. Daher habe ich eine leere Methode Check in der Oberklasse definiert. In der Unterklasse wird die Methode dann wieder mit inhalt aufgerufen (weitere Methodenaufrufe, Berechnungen, etc.)

weißt du ob da was falsch ist?
 
M

Mike17

Gast
Code:
public class oberklasse{

    StringBuffer message;
    .....

    public void actionPerformed(java.awt.event.ActionEvent e){

        .......

         if (e.getSource() == jButtonCheck){
        	jProgressBar.setIndeterminate(true);
        	Check();
        	jTextPane.setText(message.toString());
                ............
         }
    }

    public void Check(){}

}


public class Unterklasse{
    
    public void Check(){
        ...........
    }

    public void setString(){
        message = error;
    }

}

Es soll am schluss "message" in der jTextPane ausgeben.

Kann mir nicht jemand helfen? Was ist da falsch? :(
 
S

SlaterB

Gast
was ist die Frage?
soll in Check() setString() aufgerufen werden oder wie?
das kann man doch alles an deinem Code nicht sehen

Möglichkeiten nun:
a.)
mehr Code posten, erstelle am besten ein komplett lauffähiges Programm,
lasse die GUI usw weg, reicht doch wenn du
System.out.println("im JTextPane würde nun "+message.toString()); +" stehen");
statt
jTextPane.setText(message.toString());
schreibst,

den Button mit ActionPerformed zu ersetzen wäre wohl etwas schwerer, vielleicht zu schwer für dich,
dann eben mit GUI

b)
pflastere dein Programm mit Ausgaben, um zu verstehen, was es tut, a la
public void Check(){
System.out.println("Check() in Klasse xy aufgerufen");
...........
}




-------

Operationen klein schreiben!!
 
M

Mike17

Gast
Code:
public class Test {
	
	static StringBuffer message;
	static int CountMessage;	
	
    public static void main(String[] args){
    	check();
    	System.out.print(message);
    }
    
	public static void setErrorMessage(){}
	
	public static void check(){}
	
	public static void counter(){}
}

public class CheckTest extends Test {
	
	static StringBuffer error = new StringBuffer();
	static int counter = 0;
	
	public static void setErrorMessage(){
		message = error;
	}
	
	public static void counter(){
		CountMessage = counter;
	}
	
	public static void check(){
		int i = 1;
		if(i==1){
			error.append("text");
			counter++;
		}
	}
}

ich habe das jetzt mal ohne gui gemacht.

>>soll in Check() setString() aufgerufen werden oder wie?<<
in der Methode check() wird der StringBuffer aufgebaut und der counter erhöht -> error wird an die setErrorMessage Methode von der Klasse Test übergeben. Nachdem die Methode check() ausgeführt ist soll es message ausgeben.

was habe ich falsch gemacht beim Aufruf von der methode check() in der Klasse Test?? ...sonst funtz ja alles
 
S

SlaterB

Gast
> in der Methode check() wird der StringBuffer aufgebaut und der counter erhöht

' StringBuffer aufgebaut ' heißt 'in den vorhandenen StringBuffer error etwas hineingeschreiben'?
dann stimmt das jedenfalls

> -> error wird an die setErrorMessage Methode von der Klasse Test übergeben.

?? ne, wieso ??

> Nachdem die Methode check() ausgeführt ist soll es message ausgeben.

in message steht aber nach wie vor nix drin
 
G

Guest

Gast
Code:
public static void setErrorMessage(){
    message = error;
}

...das bedeutet doch das der inhalt von "error" dem StringBuffer "message" zugewiesen wird, und auf message kann man dann in der Superklasse zugreifen bzw. ausgeben, oder habe ich das falsch verstanden?
 
S

SlaterB

Gast
das stimmt, nur wird
setErrorMessage() nie aufgerufen


wenn das irgendwann mal aufgerufen werden sollte,
dann wäre das übrigens beides das gleiche Objekt,

dann würde es in Zukunft reichen, nur in error etwas reinzuschreiben,
weil error == message
 
M

Mike17

Gast
hmm...ich habe das ganze mit check() jetzt mal weggelassen und es funtz nicht...jetzt habe ich doch die methode counter aufgerufen. :bahnhof: wenn das nur mal funktionieren würde dann versteh ich das andere auch


Code:
public class Test { 
    
   static int CountMessage;    
    
    public static void main(String[] args){ 
       counter();
    } 
    
   public static void counter(){
       System.out.print(CountMessage);
   } 

} 

public class CheckTest extends Test { 
        
   public static void counter(){ 
      CountMessage = 5;
   } 
    
}

kannst du mir bitte erklären was ich falsch gemacht habe oder ausbessern


DANKE für deine Hilfe :toll:
 
S

SlaterB

Gast
was soll denn deiner Meinung nach passieren?
für mich sieht das Programm korrekt aus,
counter() wird ausgeführt und 0 ausgegeben,

warum sollte CheckTest irgendwas mit dem Programm zu tun haben?
nur weil das zufällig eine SubKlasse ist?
was wenn du 10 SubKlassen hast, sollen deren Operationen per Zauberhand auch alle ausgeführt werden?

übrigens haben Vererbung und static sehr wenig miteinander zu tun,
in jedem Lehrbuch über Vererbung wirst du (lange Zeit) nix von static lesen ;)
(wenn du denn mal ein Lehrbuch lesen würdest?)
 
M

Mike17

Gast
ich habe static nur in dem bsp, in dem richtigen mit gui verwende ich kein static.

was kann ich jetzt machen das es mir 5 ausgibt??...sonst brauch ich eh nichts mehr
 
S

SlaterB

Gast
z.B.
Code:
public class Test
{

    static int CountMessage;

    public static void main(String[] args)
    {
        new CheckTest().counter();
    }

    public  void counter()
    {
        System.out.print(CountMessage);
    }

}

class CheckTest
    extends Test
{
    public  void counter()
    {
        CountMessage = 5;
        super.counter(); // damit es auch zum print kommt
    }
}
 
L

Lisa1990

Gast
habe noch eine Frage :bahnhof:

beispiel:

Code:
public class Tier{

    String hund;

    public void schreiben(){
         hund = "Das ist ein Hund";
    }

    .........

}


public class Hund extends Tier{

    public void ausgabe(){
        System.out.print(hund);
    }
    
    ......

}


ich habe das in meinem beispiel genauso, in der oberklasse wird hund initialisiert und bearbeitet und soll in der unterklasse ausgegeben werden.

warum funtz das nicht??


Danke
Lisa
 
S

SlaterB

Gast
das hat sich doch in dem anderen Beispiel schon angedeutet
und solltest du wie tausende Dinge richtig in einem Buch nachlesen:

eine Operation in der Unterklasse überschreibt die der Oberklasse vollständig,
die Operation der Oberklasse wird dann nicht auch noch aufgerufen,

damit beide ausgeführt werden schreibe in der Unterklasse:
public void ausgabe(){
super.ausgabe();
System.out.print(hund);
}
 
G

Guest

Gast
ich möchte jetzt den inhalt von einem String (oberklasse) in der subklasse haben.

Code:
public class Tier{
   String hund;
   
    public void schreiben(){
        String hund = "text text text";
    }

}


public class Hund extends Tier{
    String haustier;
    
    public void textext(){
        haustier = hund;    //in haustier soll jetzt "text text text" stehen    
        ..........
    }
}


das funktz ja nicht so wie das ausgeben, ich möchte ja die methode schreiben nicht ändern sondern nur den string haben. Kann mir das vielleicht jemand erklären oder hat jemand ein kleines beispiel :cry:


Danke für die Hilfe
 
S

SlaterB

Gast
tja, ohne irgendwann mal schreiben() aufzurufen wird das wohl nie passieren..,

ich jedenfalls wollte nur noch sagen, dass ich nicht weiter antworte,
lies Grundlagenbücher, darin wird alles erklärt,
 

mikachu

Top Contributor
auch wenn die schreiben() methode aufgerufen würde, würde nicht in der klassenvariable hund "text text text" stehen, da in der methode eine neue variable hund vom typ string erstellt wird, und nicht auf die klassenvariable zugegriffen wird.

lies lieber grundlagenbücher, wie slaterB sagte ;)

#edit 1:
Code:
public class Tier{ 
   String hund; 
    
    public void schreiben(){ 
        hund = "text text text"; 
    } 

} 


public class Hund extends Tier{ 
    String haustier; 
    
    public void textext(){ 
        schreiben();
        haustier = hund;    //jetzt sollte in hund "text text text" stehen
        .......... 
    } 
}

#untested#
 
G

Guest

Gast
Code:
String text;

public void actionPerformed (java.awt.event.ActionEvent e) {
    if (e.getSource() == jMenuItemOpen){       
	if(fc.showOpenDialog(jContentPane)==0){ 
	          dateiname = fc.getSelectedFile();
	          try{               
	            in = new BufferedReader(new FileReader(dateiname)); //Öffnen
	            while((textdatei=in.readLine())!=null){ 
	            	new unterklasse().open();
	            }
	            in.close();    //Datei schließen
	          }
	          catch(Exception ex1){System.out.println(ex1);} 
	  }
	  else{
	          JOptionPane.showMessageDialog(jContentPane,"Keine Datei zum Öffnen gewählt!","ÖFFNEN",JOptionPane.ERROR_MESSAGE);   
	 }
    }
    .......
}


public void open(){
    text.append(textdatei);
    text.append("\n");
    System.out.print(text); //Text noch da
}


------------------------------------

public class unterklasse{

    StringBuffer test;

    public void open(){
        test = text;
        super.open();  
    }

....StringBuffer test in der unterklasse ist dann leer. ???:L Würde es toll finden wenn mir bei diesem Problem jemand hilft. (Erklärung oder Beispiel) Dann funktioniert alles und ich werde mich nie wieder damit beschäftigen, keine bücher lesen usw., ich bleib da lieber bei html und flash
 
L

Lisa1990

Gast
@mika.fhdw: habe es probiert funktioniert leider auch nicht
 

mikachu

Top Contributor
@Lisa1990
Code:
public class Tier
{
   String hund;

   public void schreiben()
   {
      this.hund = "text text text";
   }

   public static void main( String[] args )
   {
      Hund h = new Hund();
      h.texttext();
      System.out.println( h.haustier ); // "text text text"
      System.out.println( h.hund ); // "text text text"
   }
}

class Hund extends Tier
{
   String haustier;

   public void texttext()
   {
      super.schreiben();
      this.haustier = super.hund;
   }
}

klappt wunderbar !

#edit 1:
mit this und super versehen für bessere verständlichkeit ;)
 
L

Lisa1990

Gast
bevor ich euch anlüge und sage das ich jetzt hundert bücher darüber lese sage ich gleich die wahrheit. Es gibt sicher viele leute denen das sehr spaß macht (ich gehöre da leider nicht dazu, habe ander interessen), trotzdem muss ich dieses Programm machen und wenn ich den inhalt von dem StringBuffer in der Unterklasse habe funktioniert alles.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
M Vererbung - Polymorphie Java Basics - Anfänger-Themen 37
L Java- Vererbung Java Basics - Anfänger-Themen 4
ineedhelpinjava Vererbung Java Basics - Anfänger-Themen 12
ineedhelpinjava Vererbung Java Basics - Anfänger-Themen 1
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
M Interface oder Vererbung? Java Basics - Anfänger-Themen 12
M Vererbung Java Basics - Anfänger-Themen 6
M Designentscheidung von Attributen/Methoden im Falle von Vererbung Java Basics - Anfänger-Themen 8
M Generics Vererbung Listen Java Basics - Anfänger-Themen 2
A Methoden Vererbung und Interface Java Basics - Anfänger-Themen 14
D Klassen und Vererbung Java Basics - Anfänger-Themen 2
U Vererbung Java Basics - Anfänger-Themen 7
D Vererbung Java Basics - Anfänger-Themen 3
K Schleife berechnet kein Ergebnis (Vererbung) Java Basics - Anfänger-Themen 6
00111010101 Objektorientiertes Programmieren mit Vererbung (Zahlen in Array verschwinden) Java Basics - Anfänger-Themen 3
W Zur Vererbung: Wann und wie? Java Basics - Anfänger-Themen 35
H Datenkapselung, Vererbung und UML Java Basics - Anfänger-Themen 16
districon Super-Stichwort/ Vererbung Java Basics - Anfänger-Themen 3
YaU Vererbung erstellt NullPointerException? Java Basics - Anfänger-Themen 4
G Vererbung Klassenattribute Java Basics - Anfänger-Themen 9
TimoN11 Frage zu Java-Vererbung (Cast) Java Basics - Anfänger-Themen 5
N Thema Vererbung Java Basics - Anfänger-Themen 31
A Vererbung Vererbung Übung Java Basics - Anfänger-Themen 5
B Vererbung - Sichtbarkeitsmodifikation - protected Java Basics - Anfänger-Themen 10
B Best Practice Unschlüssig ob Vererbung oder Interface Java Basics - Anfänger-Themen 2
G Java Vererbung Java Basics - Anfänger-Themen 8
Y Vererbung Konto - Anfangsprobleme Java Basics - Anfänger-Themen 7
A Vererbung Klassen im Bezug auf Auto´s Java Basics - Anfänger-Themen 18
A Klassen Vererbung und zusätzliche Unterklassen Java Basics - Anfänger-Themen 23
M Vererbung mit Enums Java Basics - Anfänger-Themen 8
Kirby.exe Vererbung im Detail erklärt? Java Basics - Anfänger-Themen 9
N Modellierung, vererbung, Java Basics - Anfänger-Themen 163
M Fehlendes Verständnis für dynamische Bindung und Vererbung Java Basics - Anfänger-Themen 13
W OOP Vererbung im Computerspiel Java Basics - Anfänger-Themen 7
J Probleme mit Vererbung Java Basics - Anfänger-Themen 4
I Vererbung Java Basics - Anfänger-Themen 13
W OOP Vererbung und Problem bei Zählschleife in einer Methode Java Basics - Anfänger-Themen 10
W Methoden Verständnisfrage Vererbung von Methoden Java Basics - Anfänger-Themen 14
V Vererbung Java Basics - Anfänger-Themen 2
J Frage zur Vererbung Java Basics - Anfänger-Themen 1
J Vererbung Java Basics - Anfänger-Themen 3
U Was löst meine NullPointerException aus? (Vererbung) Java Basics - Anfänger-Themen 12
O Vererbung Ueben mit kleiner Datenstruktur von Räumen Java Basics - Anfänger-Themen 10
O Umgang mit Vererbung verstehen Java Basics - Anfänger-Themen 4
A Vererbung/Interfaces/Generics Java Basics - Anfänger-Themen 12
O Vererbung änderung des Konstruktors Java Basics - Anfänger-Themen 8
L Vererbung Java Basics - Anfänger-Themen 5
E HashMap+Vererbung Java Basics - Anfänger-Themen 11
E Vererbung super-Methoden Aufruf Java Basics - Anfänger-Themen 3
B Java Vererbung Fragen (zu Code Beispiel) Java Basics - Anfänger-Themen 3
A Objekterstellung bei der Vererbung Java Basics - Anfänger-Themen 7
P Vererbung Warum funktioniert die Vererbung hier nicht Java Basics - Anfänger-Themen 14
S Vererbung Java mehrfach Java Basics - Anfänger-Themen 10
B Objekte zählen/ Vererbung/ Kopplung/ Interface/ Abstract Class Java Basics - Anfänger-Themen 5
A Klassen Vererbung privater Methoden und Member Java Basics - Anfänger-Themen 12
A Konstruktoren Vererbung Java Basics - Anfänger-Themen 3
ReinerCoder Vererbung von JFrame in einer Klasse entfernen Java Basics - Anfänger-Themen 5
W Vererbung, abstract und Konstruktoren Java Basics - Anfänger-Themen 30
J Vererbung und Methodenaufruf Java Basics - Anfänger-Themen 11
G Polymorphie, Vererbung, statischer Typ, Laufzeittyp Java Basics - Anfänger-Themen 2
H Vererbung mit private instanzvariablen Java Basics - Anfänger-Themen 9
S Vererbung Funktionsweise Code zur Vererbung Java Basics - Anfänger-Themen 1
C Methoden Vererbung private Attribute/public Methoden Java Basics - Anfänger-Themen 4
S Verständnis Vererbung Java Basics - Anfänger-Themen 3
D JavaFX Vererbung Java Basics - Anfänger-Themen 2
U Vererbung Generizität und Vererbung Java Basics - Anfänger-Themen 4
A Vererbung bei Klassen mit Objekt der Klasse im Konstruktor Java Basics - Anfänger-Themen 4
K Vererbung Octagon von Circle Java Basics - Anfänger-Themen 0
B Hilfe bei Vererbung Java Basics - Anfänger-Themen 2
D Vererbung Frage zum Klassenaufbau mit Vererbung Java Basics - Anfänger-Themen 1
T Vererbung und interface. Java Basics - Anfänger-Themen 1
S Gehaltsberechnung (Vererbung, abstrakte Methoden) Java Basics - Anfänger-Themen 6
S Vererbung Java Basics - Anfänger-Themen 1
F Vererbung in zwei Richtungen? Java Basics - Anfänger-Themen 14
D Vererbung / Polymorphie Java Basics - Anfänger-Themen 5
O Vererbung Java Basics - Anfänger-Themen 5
MiMa Vererbung Theorie OK, Praxis ?? Java Basics - Anfänger-Themen 4
Arif Vererbung Vererbung Variablen überschreiben Java Basics - Anfänger-Themen 1
C Vererbung - Ausgaben bestimmen Java Basics - Anfänger-Themen 6
S Vererbung Java Basics - Anfänger-Themen 10
L Setter und Getter/Vererbung Java Basics - Anfänger-Themen 6
C Konstruktoren und Vererbung Java Basics - Anfänger-Themen 2
J Kleinere Frage zur Vererbung/Objekterzeugung Java Basics - Anfänger-Themen 2
G Vererbung Java Basics - Anfänger-Themen 12
J Vererbung privater Variablen Java Basics - Anfänger-Themen 7
J Vererbung Vererbung von Methoden Java Basics - Anfänger-Themen 6
B Vererbung Java Basics - Anfänger-Themen 12
K Vererbung (super) Java Basics - Anfänger-Themen 2
A ArrayQueue mit Exceptions und Vererbung Java Basics - Anfänger-Themen 3
J Java: static bei Vererbung Java Basics - Anfänger-Themen 5
C Vererbung Java Basics - Anfänger-Themen 4
L Vererbung Java Basics - Anfänger-Themen 3
J Klassenorganisation | Vererbung Java Basics - Anfänger-Themen 1
B Vererbung Vererbung Java Basics - Anfänger-Themen 2
N Generics Vererbung Wildcard Interface Java Basics - Anfänger-Themen 8
A Benötige Hilfe bei Vererbung Java Basics - Anfänger-Themen 1
M Anfängerprobleme mit Vererbung Java Basics - Anfänger-Themen 27
J Vererbung Java Basics - Anfänger-Themen 9
F Vererbung von Attributen zwischen zwei Klassen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben