# java.util.Random



## nasid (8. Apr 2010)

Aufgabe:
die Klasse java.util.Random enthält keine Methoden um ein zufälliges Zeichen zu generieren.
Beerbe die Klasse java.util.Random.
Ihre Tochterklasse soll eine Methode besitzen, welche ein zufälliges Zeichen zwischen 32 und 126 zurückgibt.
Sie soll eine weitere Methode besitzen, welche zwei Zeichen für die untere und obere Grenze des zurückgegebenen Zeichens als Parameter hat und ein entsprechendes zufälliges Zeichen zurückliefert.
Die Grenzen für die Zeichengenerierung sollen in Attributen der Klasse gespeichert werden.
Dies bedeutet, dass die Grenzen 32 und 126 für die Methode ohne Parameter durch den Standardkonstruktor gespeichert werden.
Ein weiterer Konstruktor initialisiert die beiden Grenzen zu übergebenden Werten.
Die Klasse java.util.Random besitzt einen Konstruktor, welcher ein long für die Initialisierung des Zufallsgenerators übernimmt.
Ergänze Ihre Klasse um Konstruktoren, die diesen zusätzlichen Parameter übernehmen.
Insgesamt soll die erweiterte Klasse vier Konstruktoren besitzen.
Schreibe eine Java Anwendung, welche eine Zeichenkette auf dem Bildschirm ausgibt. Die Zeichenkette soll eine zufällige Länge von 15 bis 20 Zeichen haben und aus zufälligen Zeichen zwischen 32 und 126 bestehen.
Ihr Programm soll dann noch eine Zeichenkette, die eine zufällige Länge von 8 bis 12 Zeichen hat, mit zufälligen Zeichen zwischen A (65) und Z (90) ausgeben.

so habe ich das Programm geschrieben, aber es sind einige Fehler. Kann mir jemand bitte helfen?

[JAVA=42]import java.util.Random;

class Versuchen{

	public static void main (String[]args){



		int kette1 = new Random().nextInt(6)+15;	
		Versuchen zk1 = new Versuchen();

		for (int i= 1; i<kette1+1;i++){
				System.out.print(zk1.generator());

			}

					System.out.print("\n ");



		int kette2 = new Random().nextInt(5)+8;
		erwVersuchen zk2 = new erwVersuchen();

		for (int i= 1; i<kette2+1;i++){
				System.out.print(zk2.generator(90,65) );
			}

		}
	}	 [/code]


----------



## eRaaaa (8. Apr 2010)

Das ist doch nicht deine komplette Klasse oder? Wo ist bspw. 
	
	
	
	





```
generator()
```
 definiert? Wo sind die vier Konstruktoren? Erben tust du auch nicht, oder tust du das in [c]erwVersuchen[/c] ? _Für mich_ irgendwie alles unklar


----------



## Final_Striker (8. Apr 2010)

nasid hat gesagt.:


> aber es sind einige Fehler.



Welche Fehler???


----------



## nasid (8. Apr 2010)

wie würdest du das denn machen?


----------



## eRaaaa (8. Apr 2010)

- Beerbe die Klasse java.util.Random.
- eine Methode, welche ein zufälliges Zeichen zwischen 32 und 126 zurückgibt.
- eine weitere Methode, welche zwei Zeichen für die untere und obere Grenze des zurückgegebenen Zeichens als Parameter hat und ein entsprechendes zufälliges Zeichen zurückliefert.
Die Grenzen für die Zeichengenerierung sollen in Attributen der Klasse gespeichert werden.
- Dies bedeutet, dass die Grenzen 32 und 126 für die Methode ohne Parameter durch den Standardkonstruktor gespeichert werden.
- Ein weiterer Konstruktor initialisiert die beiden Grenzen zu übergebenden Werten.

(Die Klasse java.util.Random besitzt einen Konstruktor, welcher ein long für die Initialisierung des Zufallsgenerators übernimmt.)
- Ergänze Ihre Klasse um Konstruktoren, die diesen zusätzlichen Parameter übernehmen.

==>Insgesamt soll die erweiterte Klasse vier Konstruktoren besitzen.

Und daaaaaann *irgendwann* :
Schreibe eine Java Anwendung, welche eine Zeichenkette auf dem Bildschirm ausgibt. Die Zeichenkette soll eine zufällige Länge von 15 bis 20 Zeichen haben und aus zufälligen Zeichen zwischen 32 und 126 bestehen.
Ihr Programm soll dann noch eine Zeichenkette, die eine zufällige Länge von 8 bis 12 Zeichen hat, mit zufälligen Zeichen zwischen A (65) und Z (90) ausgeben.

----


nasid hat gesagt.:


> wie würdest du das denn machen?


Ich würde die Liste abarbeiten wahrscheinlich


----------



## nasid (8. Apr 2010)

ehrlich gesagt, habe ich keine Ahnung. Ich weiss nicht, wie ich das machen soll.


----------



## eRaaaa (8. Apr 2010)

nasid hat gesagt.:


> ehrlich gesagt, habe ich keine Ahnung. Ich weiss nicht, wie ich das machen soll.



Und an welchem Punkt? Vererbung hattet ihr sicherlich schon, sonst würde es in der Aufgabe nicht gestellt werden(ansonstne bliebe auch die Möglichkeit schnell im Internet/Buch o.ä. nach zuschlagen)

Wie man Methoden und Konstruktoren erstellt, wirst du ja wohl auch schon wissen... 

Fang halt klein an und erweitere die Klasse Stück für Stück.


----------

