Viele Fragen. =) Hoffentlich könnt ihr helfen

Status
Nicht offen für weitere Antworten.
J

JaVa-JoE

Gast
Hallo alle Java Programmierer
habe mal einige Fragen.

1) Wie bekomm ich es hin das ein Programm etwas in eine txt.* Datei schreibt und bei Bedarf wieder liest?

2) Anfängerfrage :): Wozu braucht man mehrere Klassen?

3)Wie schaff ich es das z.B wenn ich im Fenster Optionen etwas verändert habe das es auch im Programm (Spiel)
läuft? Vielleicht fällt euch noch was zu meinem Quelltext ein:

Code:
package play;
import javax.swing.*; //Swing importieren
import java.applet.*; //Applet importieren
import java.awt.*; //AWT importieren
import java.io.*; //IO importieren



public class Ratespiel {

//Klammer class

	public static void main (String[] args) { //Klammer main
	
try 
{ //Klammer try
	
	//Fenster erstellen
	JFrame Rahmen = new JFrame("Ratespiel");
    Rahmen.setSize (400,300);
    Rahmen.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
    JPanel Platte = new JPanel ();
    Platte.setLayout (new GridLayout());
    
    //Buttons erzeugen
    JButton Knopf1 = new JButton("Spiel spielen");
    JButton Knopf2 = new JButton ("Optionen");
    
//  Alles einsetzen und sichtbar machen 	    
    Platte.add (Knopf1);
    Platte.add (Knopf2);  
    Rahmen.setContentPane (Platte);
    Rahmen.setVisible(true);
    
	//Sounds importieren
	String Pfad1 = "D:\\Programme\\Spiel\\sounds\\richtig.wav";  
    AudioClip Richtig = Applet.newAudioClip(new File(Pfad1).toURI().toURL());
    String Pfad2 = "D:\\Programme\\Spiel\\sounds\\zuklein.wav"; 
    AudioClip Klein = Applet.newAudioClip(new File(Pfad2).toURI().toURL());
    String Pfad3 = "D:\\Programme\\Spiel\\sounds\\zugroß.wav"; 
    AudioClip Groß = Applet.newAudioClip(new File(Pfad3).toURI().toURL());
    String Pfad4 = "D:\\Programme\\Spiel\\sounds\\null.wav"; 
    AudioClip Null = Applet.newAudioClip(new File(Pfad4).toURI().toURL());

	//Spielverlauf
	String Name = JOptionPane.showInputDialog ("Bitte geben sie ihren Namen ein:");
	if (Name.equals(""))
	    Name = "Unbekannter";
	
    String Eingabe = ""; int Zahl = 0;
    int Zufall = (int)(Math.random()*1000)+1;
    int Versuche = 0;
    
    String Help = JOptionPane.showInputDialog (Name+ " brauchen sie Hilfe? Ja oder nein?");
    if ((Help.equals("Ja")) || (Help.equals("ja")));
    JOptionPane.showMessageDialog(null, "Wir spielen Zahlenraten von 1 bis 1000. Wenn sie die Null tippen wird das Spiel beendet.");
    while (Zahl != Zufall)
    {//Klammer while
    Eingabe = JOptionPane.showInputDialog (Name + " rate mal:");
    Zahl = Integer.parseInt(Eingabe);
    if (Zahl == 0) { 
    Null.play();
    break;}
    Versuche++;
    if (Zahl > 1500) 
    JOptionPane.showMessageDialog (null, "Nenne ein Zahl zwischen 1 und 1500");
    
   
    if (Zahl < Zufall) {
    	Eingabe =  Eingabe + " ist zu klein";
    	Klein.play(); }
    
    if (Zahl > Zufall) {
    	Eingabe =  Eingabe + " ist zu groß";
    	Groß.play(); }
    if (Zahl == Zufall) {
    Eingabe =  Eingabe + " ist richtig";
    Richtig.play(); }
    if (Eingabe.equals("")) JOptionPane.showMessageDialog (null, "Gebe bitte etwas ein!");
    JOptionPane.showMessageDialog (null, "Die Zahl " + Eingabe);

    }//Klammer while
    JOptionPane.showMessageDialog (null, "Das waren " + Versuche + " Versuche");
	
	} //Klammer try
    catch (Exception x)
    { //Klammer catch
    	JOptionPane.showMessageDialog (null, "Fehler aufgetreten! Eingabe falsch!");
    	String Again = JOptionPane.showInputDialog ("Noch mal versuchen? Ja oder nein?");
    	if ((Again.equals("Ja")) || (Again.equals("ja")));
    	{//Klammer if
    		try 
    		{ //Klammer try
    		    
    			//Sounds importieren
    			String Pfad1 = "D:\\Programme\\MoBa Software\\sounds\\richtig.wav";  
    		    AudioClip Richtig = Applet.newAudioClip(new File(Pfad1).toURI().toURL());
    		    String Pfad2 = "D:\\Programme\\MoBa Software\\sounds\\zuklein.wav"; 
    		    AudioClip Klein = Applet.newAudioClip(new File(Pfad2).toURI().toURL());
    		    String Pfad3 = "D:\\Programme\\MoBa Software\\sounds\\zugroß.wav"; 
    		    AudioClip Groß = Applet.newAudioClip(new File(Pfad3).toURI().toURL());
    		    String Pfad4 = "D:\\Programme\\MoBa Software\\sounds\\null.wav"; 
    		    AudioClip Null = Applet.newAudioClip(new File(Pfad4).toURI().toURL());

    			//Spielverlauf
    			String Name = JOptionPane.showInputDialog ("Bitte gebe deinen Namen ein:");
    			if (Name.equals(""))
    			    Name = "Unbekannter";
    			
    		    String Eingabe = ""; int Zahl = 0;
    		    int Zufall = (int)(Math.random()*1500)+1;
    		    int Versuche = 0;
    		    
    		    
    		    String Help = JOptionPane.showInputDialog (Name+ " brauchst du Hilfe? Ja oder nein?");
    		    if (Help.equals("Ja"))
    		    JOptionPane.showMessageDialog(null, ("Wir spielen Zahlenraten von 1 bis 1500. Wenn du 0 (Null) tippst wird das Spiel beendet."));
    		    while (Zahl != Zufall)
    		    {//Klammer while
    		    Eingabe = JOptionPane.showInputDialog (Name + " rate mal:");
    		    Zahl = Integer.parseInt(Eingabe);
    		    if (Zahl == 0) { 
    		    Null.play();
    		    break;}
    		    Versuche++;
    		    if (Zahl > 1500) 
    		    JOptionPane.showMessageDialog (null, "Nenne ein Zahl zwischen 1 und 1500");
    		    
    		   
    		    if (Zahl < Zufall) {
    		    	Eingabe =  Eingabe + " ist zu klein";
    		    	Klein.play(); }
    		    
    		    if (Zahl > Zufall) {
    		    	Eingabe =  Eingabe + " ist zu groß";
    		    	Groß.play(); }
    		    if (Zahl == Zufall) {
    		    Eingabe =  Eingabe + " ist richtig";
    		    Richtig.play(); }
    		    if (Eingabe.equals("")) JOptionPane.showMessageDialog (null, "Gebe bitte etwas ein!");
    		    JOptionPane.showMessageDialog (null, "Die Zahl " + Eingabe);

    		    }//Klammer while
    		    JOptionPane.showMessageDialog (null, "Das waren " + Versuche + " Versuche");
    		    
    		    } //Klammer try
    		catch (Exception x1)
    	    { //Klammer catch
    	    	JOptionPane.showMessageDialog (null, "Fehler aufgetreten! Eingabe falsch! Versuch 2 ebenfalls fehlgeschlagen. Programm bitte neu starten, wenn sie spielen wollen.");
    	    	

    		
    		
    	    } //Klammer catch	
    	
    	}//Klammer if
    
    
    

    
    
   




	
	
} //Klammer main



} //Klammer class

} //Unbekannte Klammer


[/code]
 

Jango

Gesperrter Benutzer
JaVa-JoE hat gesagt.:
2) Anfängerfrage :): Wozu braucht man mehrere Klassen?

Ich kapier das nicht. Wie kann man so einen Code erstellen und gleichzeitig diese Frage stellen. Ist mir unbegreiflich.

Edit: Oder ist der Code nicht von dir?
 

MasterEvil

Bekanntes Mitglied
Ich glaub das meinte er ironisch oder?
Erinnert mich ein bisschen an QuickBasic, fehlen nur noch die Zeilennummerierungen und GOTO *hrrhrr* aber das währe dann ja schon fast zu dynamisch :)

*hihi* Unbekannte Klammer ist die Klammer die deine Klasse zumacht :)

Wegen schreiben/lesen such halt mal nach BufferedReader / BufferedWriter / Example.
 
J

-JaVaJoE-

Gast
Kenntnisse hab ich schon... :) (ein bisschen) Nur hab halt ma mitten im Buch angefangen ein Programm zu schreiben. Das mit dem Sound hab ich von hier. Der Rest ist selbst geschrieben^^
 

Quaxli

Top Contributor
Dann tu' Dir selbst einen Gefallen und fang in Deinem Buch ganz vorne an, auch wenn es vielleicht etwas nervig ist und Du einiges nochmal liest was Du schon kennst.
Auf die Art lernst Du dann auch grundlegende Sachen, die Du jetzt noch nicht weißt, die aber für eine gute Programmierung notwendig sind.

Es gibt in diesem Forum meiner Ansicht nach viel zu viele Anfänger, die gleich ein Spiel programmieren wollen und wildesten Code zusammen basteln und mit Sicherheit sich auch nicht sehr lange mit dem Thema beschäftigen, weil sie einfach auf keinen grünen Zweig kommen.
 
S

SlaterB

Gast
seht ihr denn das Beispiel als ein Beispiel für Programm, dass NICHT mehrere Klassen braucht?

ich sehe das eher als perfektes Beispiel dafür, dass in Java mehrere Klassen gebraucht werden,
denn da werden JFrame, JButton, Math, Applet und jede Menge andere Klassen benutzt
 

Ark

Top Contributor
Quaxli hat gesagt.:
Dann tu' Dir selbst einen Gefallen und fang in Deinem Buch ganz vorne an, auch wenn es vielleicht etwas nervig ist und Du einiges nochmal liest was Du schon kennst.
Auf die Art lernst Du dann auch grundlegende Sachen, die Du jetzt noch nicht weißt, die aber für eine gute Programmierung notwendig sind.

Es gibt in diesem Forum meiner Ansicht nach viel zu viele Anfänger, die gleich ein Spiel programmieren wollen und wildesten Code zusammen basteln und mit Sicherheit sich auch nicht sehr lange mit dem Thema beschäftigen, weil sie einfach auf keinen grünen Zweig kommen.
Das sollte man wohl in leicht abgewandelter Form den FAQs hinzufügen, vllt. unter die Frage „Was sind Anfängerfragen?“ - „Na, alle Fragen der Form ‚Hilfe!!! GUI spinnt und kein Sound!!!!!!!111‘“. :lol:

@-JaVaJoE-: Mit Swing arbeitet man mit mehreren Threads, also solltest du vorher mit Threads umgehen können. Um aber Threads zu verstehen, brauchst du Grundwissen zu Mulititasking sowie (in Java) das Interface Runnable. Dazu wiederum musst du wissen, was Interfaces sind. Interfaces sind spezielle Klassen, die Schnittstellen definieren. Um das zu verstehen, musst du wissen, was Klassen sind und was Schnittstellen sind (das sollte man auch wissen, um überhaupt die Java-Application-Programming-Interface-Dokumentation benutzen zu können ;)). Schnittstellen sind alle Teile einer Klasse, auf die man von außen zugreifen kann. Klassen sind so etwas wie „Bauanleitungen“ für Objekte. Was Objekte in der Programmierung zu suchen haben? Tja, willkommen in der objektorientierten Programmierung!

Das erscheint jetzt viel und mühselig (ist es als Anfänger meistens auch), aber es ist unumgänglich, diese Konzepte zu verstehen, bevor man sich an GUIs ranmacht. ;)

Ark
 

Yzebär

Bekanntes Mitglied
@Ark
Ich finde es übertrieben, einem Anfänger zu raten, sich zuerst mit allen möglichen Konzepten zu beschäftigen. Das muß man nur, wenn man das Ziel verfolgt von Anfang möglichst perfekt zu programmieren. Als Anfänger sollte man möglichst wenig mit den "verwirrenden" Konzepten zu tun haben, man sollte erst einmal viel ausprobieren und wenn man dann einige Erfahrungen gesammelt hat, kann man sich nach und nach Konzepte aneignen und anfangen seinen eigenen Code zu optimieren.

Ich empfehle "Java after hours" von Steve Holzner, das Buch bildet eine gute Grundlage, sich in verschiedene Bereiche spielerisch einzuarbeiten.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Viele Fragen eines Umsteigers (von .NET) Allgemeine Java-Themen 6
A Best Practice Wie viele Referenzen machen Sinn? Weniger ist mehr? Allgemeine Java-Themen 1
D Input/Output Implementierung eines CommandHandlers/Parsers für viele Eingaben Allgemeine Java-Themen 26
T Multithreading: Wie viele Threads sollte ich erstellen? Allgemeine Java-Themen 12
Tacofan Hangman so viele Labels wie Buchstaben Allgemeine Java-Themen 5
K Variablen Konstruktor, unendlich viele Allgemeine Java-Themen 3
E Beliebig viele Worte Allgemeine Java-Themen 5
G Methoden Unterschiedliche viele Parameter Allgemeine Java-Themen 17
L MouseListener für viele Objekte erstellen Allgemeine Java-Themen 16
H Sehr viele Threads effizient Verwalten Allgemeine Java-Themen 13
R Arrayausgabe enthält viele Leerzeichen Allgemeine Java-Themen 4
M Threads Viele Aufrufe aus Thread, komisches Verhalten Allgemeine Java-Themen 8
C Threads Verbraucht eine Zeitabfrage viele Rechen-Ressourcen? Allgemeine Java-Themen 8
J BlueJ Methode hat zu viele Parameter Allgemeine Java-Themen 6
D (Viele) Daten performant speichern und lesen Allgemeine Java-Themen 5
S Viele zip-files zu einem kombinieren..? Allgemeine Java-Themen 3
KrokoDiehl Viele JARs und deren Resourcen Allgemeine Java-Themen 9
S Zu viele Felder. Allgemeine Java-Themen 4
S Viele Bilder -> Speicher ausgelastet? / (De-)serialisierung geht nicht mehr richtig Allgemeine Java-Themen 8
H GUI: RectangleDrawer - zu viele Elemente im Vector für die paint-Methode Allgemeine Java-Themen 6
R Moeglichst viele Datumsstrings in Date Objekte konvertieren? Allgemeine Java-Themen 3
O viele Datensätze aus Datenbank - Java Heap Space - Excepion Allgemeine Java-Themen 25
C Viele Informationen aus zwei Collections vergleichen Allgemeine Java-Themen 2
T viele Threads Allgemeine Java-Themen 14
T Designfrage: Viele, kleine Objekte Allgemeine Java-Themen 13
M Beliebig viele Typen bei Generics Allgemeine Java-Themen 3
F Viele generische Parameter sinnvoll? oder besser casten? Allgemeine Java-Themen 10
E Viele if Abfragen auf viele Strings --> Alternative zu if Allgemeine Java-Themen 8
V 1 Methode für viele verschiedene Klassen? Allgemeine Java-Themen 9
K Zu viele Threads -> langsamer angehen. Allgemeine Java-Themen 3
Zrebna Fragen zu Testabdeckungs-Metriken Allgemeine Java-Themen 4
MarvinsDepression Unbekanntes Zeichen in fremden Code wirft Fragen auf Allgemeine Java-Themen 4
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
K BlueJ - Fragen zu dem Spiel Pacman (Nachprogrammieren) Allgemeine Java-Themen 141
V Ich hätte 2 Fragen Allgemeine Java-Themen 5
ME2002 Fragen aus einer Java Klausur Allgemeine Java-Themen 67
H Fragen zur Kraken Api Allgemeine Java-Themen 1
nonickatall Klassen Grundsätzliche Fragen zu geplanter Programmstruktur Allgemeine Java-Themen 5
W Ein paar Fragen zu .properties und .css Allgemeine Java-Themen 6
W Mal ein paar generelle Fragen zu InputStream und OutputStream Allgemeine Java-Themen 4
X Fragen zur Javamail API und Gmail Allgemeine Java-Themen 4
T Fragen bezgl. Lambdas Allgemeine Java-Themen 20
X Collections Fragen zu gleichen Elementen in TreeSet Allgemeine Java-Themen 35
A Neuerungen in Java 8 StreamAPI- Paar fragen Allgemeine Java-Themen 4
temi Fragen zur Software-Architektur Allgemeine Java-Themen 123
M Diverse Design-Fragen Allgemeine Java-Themen 6
J 2 Fragen zur Vererbung Allgemeine Java-Themen 5
H Java FX 2 Fragen um Programm in mehrere sprachen zu übersetzen in Gluon Framwork Allgemeine Java-Themen 3
M Fragen beantworten über Textfeldeingabe Allgemeine Java-Themen 5
D Grundsätzliche Fragen zum Heap Space Allgemeine Java-Themen 12
J Allgemeine Fragen zu Vererbung Allgemeine Java-Themen 1
M Allgemeine Fragen meinerseits Allgemeine Java-Themen 4
V Wie kann ich die Fragen mit den anderen Klassen verbinden? Allgemeine Java-Themen 1
J Fragen zu generischer doppelt verketteter Liste (bei fehlendem Grundverständnis) Allgemeine Java-Themen 1
R Es gibt keine dummen Fragen (hab ich mal gehört) Allgemeine Java-Themen 11
T Fragen zum Thread-Thema Allgemeine Java-Themen 4
2 2 Klein Fragen Allgemeine Java-Themen 7
alderwaran .jar Code Signing, User-Keystore und Fragen dazu Allgemeine Java-Themen 0
T Fragen zum Thread-Thema Allgemeine Java-Themen 9
A Java Theorie-Fragen Allgemeine Java-Themen 7
K Java QUIZ-Spiel Fragen und Antworten generieren?! Allgemeine Java-Themen 5
R Socket Fragen zu UDP Allgemeine Java-Themen 1
B Noob-Fragen zu Tablets und PC kompatiblität... Allgemeine Java-Themen 6
D Ein paar allgemeine Fragen zu Java Allgemeine Java-Themen 19
L Fragen für Facharbeit: Analyse von Strings in Java Allgemeine Java-Themen 4
R Fragen zu Server + UI Allgemeine Java-Themen 2
U Vier Fragen zu Java Allgemeine Java-Themen 2
H MediaManager Fragen/Probleme Allgemeine Java-Themen 6
D Fragen zum erstellen einer ausführbaren Jar Datei Allgemeine Java-Themen 3
C Polymorphie Fragen zur Annotations von Persistenz Allgemeine Java-Themen 2
O Fragen über Fragen - Bei Änderung XML-Datei -> Anpassung GUI Allgemeine Java-Themen 7
StrikeTom Java Performance Fragen Allgemeine Java-Themen 5
Luk10 Fragen zum ByteBuffer (lwjgl - icons) Allgemeine Java-Themen 2
F Akkumulator Hough-Transformation offene Fragen Allgemeine Java-Themen 4
Luk10 Fragen zu Naming-Conventions Allgemeine Java-Themen 5
Z Einige Fragen Allgemeine Java-Themen 10
T OOP Einige Fragen zu UML-Klassendiagrammen Allgemeine Java-Themen 6
G Einige Fragen zu ResourceBundles Allgemeine Java-Themen 2
S Fragen zu verschiedenen Themen vom JCreator Allgemeine Java-Themen 2
DStrohma Grundsätzliche Fragen zum Aufbau eines komplexeren Programmes Allgemeine Java-Themen 8
Semox Grapheneditor - Allgemeine Fragen zum Logikdesign Allgemeine Java-Themen 3
O kleine Fragen eines Anfängers Allgemeine Java-Themen 2
X Executor fragen ob fertig Allgemeine Java-Themen 13
nrg Swing 2 Fragen zu Swing/AWT Allgemeine Java-Themen 7
K Reflections Fragen Allgemeine Java-Themen 7
S Fragen zum SCJD-Zertifikat Allgemeine Java-Themen 2
M Backend Entwicklung - Konzept fragen Allgemeine Java-Themen 3
E Fragen zu Scala Allgemeine Java-Themen 11
Daniel_L Fragen zu RegEx und URL umwandeln Allgemeine Java-Themen 4
J Diverse Fragen bezüglich Jasper Allgemeine Java-Themen 3
S Fragen zum ShutdownHook Allgemeine Java-Themen 7
V Fragen zu einem Java Browser Allgemeine Java-Themen 7
G Fragen zum eigenen Scheduler Allgemeine Java-Themen 4
M Drag and Drop: 3 Fragen Allgemeine Java-Themen 3
L Einige Fragen zu Java Allgemeine Java-Themen 9
F Linguistische Fragen zu Javadoc bzw. Englisch Allgemeine Java-Themen 4
E Einfache Fragen zu Dateien Allgemeine Java-Themen 7
E Thread Fragen in Verbindung mit Swing Allgemeine Java-Themen 4
M MVC Design Pattern - Verständniss Fragen Allgemeine Java-Themen 3
X Einige Fragen zu Serialisierung Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben