OOP Pakete Import

D

Drizzt2812Gust

Gast
Hallo Leute,

ich bräuchte eure Hilfe und zwar geht es um vordefinierte Pakete der Java API.
Ich bräuchte die Javax.Swing.JOptionPane, die ein Fenster erzeugt, welches eine Frage beinhaltet.
(z.B. "Hallo, wie ist Ihr Name?")

Ich kenne mich schon ein wenig mit dem System der Java API aus und weiß auch, dass der Befehl am Anfang des Quellcodes "import" lauten muss, ABER:

Wie bekomme ich nun die vorgefertigten Klassen bzw. Methoden in meine Methode in z.B. Eclipse, sodass Sie dann auch funktionieren und das Fenster erscheint?

Ich habe 2 Klassen , eine "Application" mit der main-Methode und eine "InputUser" Klasse

Wie kann ich nun die Methode JOptionPane verwenden?
ist das eine eigene Methode oder kann ich die vorgefertigte Methode in eine von mir selbst implementierte Methode einfügen?
Könntet ihr mir bezüglich der Verwendung dieser Methoden ein Beispiel geben?
Im Internet steht viel Theoriekram, aber ich brächte ein Beispiel anhand eines kleine Codes oder so...

Dankbar für alles was mir weiterhilft !

mfg
 
D

Drizzt2812Gust

Gast
Hmm ich bin irgendwie zu blöd dafür :(
Aber irgendwie ist die Aufgabenstellung auch n bisschen komisch...

"Als Nächstes implementieren SIe die Methode readInput(). Diese Methode fordert den Benutzer auf seinen Namen einzugeben und liest diese Eingabe ein. Anschließend wird die Eingabe auf Korrektheit überprüft. Ist sie fehlerfrei, so wird die Eingabe dem Attribut des Objektes als Datenwert zugewiesen."

Verwenden SIe zur Realisierung der Benutzereingabe die statische Methode showInputDialog() der Klasse javax.swing.JOptionPane. Diese Methode erzeugt ein EIngabefenster. Geben Sie dieser Methode als Parameter die ZEichenkette mit, die dem Benutzer als Eingabeaufforderung angezeigt werden soll. ALs Ergebnis liefert die Methode die eingelesene Zeichenkette zurück, bzw. null, falls der Benutzer nichts eingibt. Speichern Sie dieses Ergebnis in einer geeigneten Variable.

Wurde erfolgreich eine korrekte Zeichenkette eingegeben, weisen Sie diese über die Methode für den schreibenden Zugriff an das Attribut des aktuellen Objekts zu."


naja ich hab jetzt meine 2 Klassen

Application:

[Jave]package edu.hm.cs.swe2.strings;

public class Application {

public static void main (String [] args){




}

}
[/code]

und UserInput

[Java]
package edu.hm.cs.swe2.strings;
import javax.swing.JOptionPane;

public class UserInput {

private String name = "";

public String getName()
{
return name;
}

public void setName(String name)
{
this.name = name;
}

public UserInput ()
{
this.name = null;
}

public static void isValid(Boolean newName)
{
if (newName)
{
System.out.println("true");
}

}

public void readInput(String name)
{
{
String input = JOptionPane.showInputDialog("Hallo " + name + " schön, dass du da bist");
}
}




}
[/code]

aber ich bekomm das nicht zum laufen....ich weiß nicht wie ich das Kästchen erzeuge ...außerdem zeigt das Programm immer bei der Methode readInput die Meldung an, dass "input" nicht gelesen wird....


Kann mir da noch einer helfen?
Ich hab echt n blackout grade...und sitze schon ziemlich lange vor diesem Programm...

mfg
 

luna

Mitglied
Warum ist deine Main-Methode leer?
Also ich poste hier mal meine Interpretation der Aufgabe (wobei ich nicht ganz verstehe wie diese isValid() konzipiert sein soll):

Java:
import javax.swing.JOptionPane;

public class ReadInput {
     private String name = "Anna";
     
     public static void main(String[] args) {
           ReadInput input = new ReadInput();
           input.readInput();
     }
     public void readInput() {
           String name = JOptionPane.showInputDialog("Please enter your name:");
           isValid(name);
     }
     public void isValid(String name) {
          if (this.name.equalsIgnoreCase(name)) {
              this.name = name;
          }
      }
}

keine Gewähr für Richtigkeit ;)
 
D

Drizzt2812Gust

Gast
danke für deine antwort!

isValid behinhaltet später noch Ausnahmen, die dazu führen, dass eine Fehlermeldung erscheint.

also z.B.

wenn man nichts eingibt bzw. etwas falsches soll die Fehlermeldung "Die zu prüfende Zeichenkette existiert nicht" etc. ausgegeben werden

aber das werd ich schon irgendwie selbst hinbekommen...hoffe ich zumindest :p


mfg
 
D

Drizzt2812Gust

Gast
Sooo bin bissl weitergekommen....

Application

Java:
package edu.hm.cs.swe2.strings;

public class Application {

	public static void main (String [] args){


		new UserInput().readInput();
		
}
	
}

UserInput Klasse

Java:
package edu.hm.cs.swe2.strings;
import javax.swing.JOptionPane;

public class UserInput {

	private String name = "";
	
	public String getName()
	{
		return name;
	}
	
	public void setName(String name)
	{
		this.name = name;
	}
	
	public UserInput ()
	{
		this.name = null;
	}
	
	public static void isValid(boolean name)
	{
		if (name)
		{
			System.out.println("Hallo " + name + ", schön, dass du da bist");
		}			
		else
		{
			System.out.println("Falscher Name");
		}
		
	}
	
	public void readInput()
	{
		{
		String newName = JOptionPane.showInputDialog("Wie ist dein Name?");
		isValid(true);
		}
	}
	
	
	
	
}


Es wird nun ein Eingabefenster erzeugt mit dem Text:

"Wie ist dein Name?"

Danach folgt aber das Problem
Egal was ich eingebe, es kommt immer "Hallo true, schön, dass du da bist." raus

Ich weiß es liegt an isValid(true);
und Einschränkungen kann das Programm natürlich auch noch nicht erkennen, da ich noch keine implementiert habe, aber wie schaffe ich es, dass als Ergebnis nun - für den Fall ich gebe als Name "Hugo" ein, folgendes rauskommt:

Hallo Hugo, schön, dass du da bist.

und wenn ich nichts eingebe soll "null" rauskommen bzw. "Falscher Name" bzw. ungültiger Name...

das zieht sich alles so bei mir :(
bin nur noch am durchlesen der Java theorie aber ich muss das bis Montag 6 Uhr früh fertig haben ...

BIn für jede Antwort dankbar

mfg
 

eRaaaa

Top Contributor
Wieso hast du daraus denn jetzt ein boolean gemacht?
Lass es bei String und überprüfe ob dieser [c]null[/c] bzw. leer ist...
--->

Java:
	public static void isValid(String name) {
		if (name != null && !name.isEmpty()) { //<--
			System.out.println("Hallo " + name + ", schön, dass du da bist");
		} else {
			System.out.println("Falscher Name");
		}
	}

	public void readInput() {
		String newName = JOptionPane.showInputDialog("Wie ist dein Name?");
		isValid(newName); //<--
	}
 
D

Drizzt2812Gust

Gast
danke !

hab noch paar fragen (hoffe das geht in Ordnung)

also ich habe jetzt hinbekommen dass ein Fehlermeldung kommt, wenn ich nichts eingebe
aber ich verstehe den Unterschied zwischen

"DIe zu prüfende Zeichenkette existiert nicht"

und "Die zu prüfende Zeichenkette ist leer"


Ist das der Fall, soll eine Fehlermeldung ausgegeben werden ...aber ich verstehe den unterschied zwischen den 2 Fehlermeldungen nicht und schaffe es deswegen nicht, sie zu implementieren

kann mir das einer erklären ?

Ich versteh auch nicht woher man wissen soll wann man welche Bibliotheksmethode benutzen soll
z.B:

"Die zu prüfende Zeichenkette umfasst nur ein einziges Zeichen"

Ich weiß zwar, dass es dafür eine vorgefertigte Methode gibt und die vom Typ char sein muss, weil die einzelnen Buchstaben überprüft werdne müssen, aber wie bau ich das in meine isValid MEthode ein wenn ich nichmal weiß wie die Methode in der Bibliothek heißt??

mfg

(bin noch nich so gut in java.. )
 

eRaaaa

Top Contributor
aber ich verstehe den Unterschied zwischen

"DIe zu prüfende Zeichenkette existiert nicht"

und "Die zu prüfende Zeichenkette ist leer"

kann mir das einer erklären ?

Das sind genau die Fälle die ich eben dir in der if-Abfrage eingebaut habe

if(name == null) --> "DIe zu prüfende Zeichenkette existiert nicht"
if(name.isEmpty()) oder if(name.length() == 0) --> "Die zu prüfende Zeichenkette ist leer"

Ich versteh auch nicht woher man wissen soll wann man welche Bibliotheksmethode benutzen soll
z.B:

"Die zu prüfende Zeichenkette umfasst nur ein einziges Zeichen"

Zeichenkette = String, das heißt, du könntest in die API für String schauen.
Bzw, vllt kannst du es ja jetzt sogar auch ohne :wink:
 
D

Drizzt2812Gust

Gast
ja das weiß ich auch aber wenn ich Leertaste drück und dann nichts eingebe kommt

"Hallo , schön dass du da bist "

-.-
 

Wortraum

Bekanntes Mitglied
Dann prüfe eben noch, ob das erste Zeichen kein Leerzeichen ist oder ob die Zeichenkette nur aus Buchstaben besteht oder ob der Name länger als 1 ist. Aber für die Aufgabe ist das wahrscheinlich unwichtig.

> "Hallo , schön dass du da bist "

Wenn der Name „ “ (␣) ist, dann fehlt da eindeutig ein Leerzeichen; aber ein Beistrich fehlt ja auch, obwohl er im Quelltext steht.

> Ich versteh auch nicht woher man wissen soll wann man welche Bibliotheksmethode benutzen soll

Indem Du, wie schon gesagt, in die Dokumentation der jeweiligen Klasse schaust. Dort findest Du bei String beispielsweise die Methode charAt(int) oder matches(String). Damit kannst Du beispielsweise auf s.charAt(0) == ' ' oder s.matches("[a-zA-Z].*") (alles, was mit einem Buchstaben anfängt) prüfen.
charAt
matches

Da Du nun auch length() kennst, sollte es auch kein Problem sein, auf eine Länge größer 0 zu prüfen.

Entwicklungsumgebungen zeigen anbei die Methodendokumentationen eines Objektes gleich an, was später das Entwickeln erheblich vereinfacht. Oft weiß man ja nicht mehr genau, wie eine Methode hieß oder welche Paramter ihr übergeben werden mußten. Du mußt also nicht erschrecken, wenn in der Dokumentation zwanzig Methoden aufgelistet werden, denn die kennt vermutlich niemand auswendig. Standardklassen wie String benutzt man aber so oft, daß man die „üblichen Verdächtigen“ wie length() oder matches() kennt.
 
Zuletzt bearbeitet:
D

Drizzt2812Gust

Gast
[Java]
public static void isValid(String name)
{
if (name != null && !name.isEmpty() && !name.matches("[a-zA-Z].*") )
{
System.out.println("Hallo " + name + ", schön, dass du da bist");
}
if (name.isEmpty() || name == null)
{

System.out.println("Leere Eingabe ist ungültig!");
}
if (name.matches("[a-zA-Z].*") )
{
System.out.println("Sei nicht so schreibfaul. Dein Name ist mehr als ein Zeichen lang!");
}

{

}

}
[/code]

Sooo....könnte mir einer sagen wie ich mein Programm dazu bekomme, dass wenn sich das Fenster öffnet und die Aufforderung:

"Geben Sie ihren Namen ein"

erscheint und ich dann etwas eingebe mit einem Leerzeichen davor oder danach, dass das dann zu einer weiteren Fehlermeldung führt?

z.B.

LEERZEICHEN Paul --> fehler
Paul LEERZEICHEN --> fehler
Paul --> korrekt

LEERZEICHEN Paul LEERZEICHEN --> fehler


ich such grad immer bei google aber falls es hier einer weiß dann wär das wirklich nett es hier zu posten !

hab nur noch bis montag 6 uhr früh zeit :(
mfg
 

Wortraum

Bekanntes Mitglied
Wie wäre es, wenn Du auch etwas selbst machst? Oder wenn Du überhaupt zu verstehen versuchst, was man Dir schreibt? matches("[a-zA-Z].*") prüft ja mitnichten, ob der Name ein Zeichen lang ist.

Ob das erste oder letzte Zeichen ein Leerzeichen ist, solltest Du nach dieser Hilfe selbst können. Stichwörter: charAt, length.
 
D

Drizzt2812Gust

Gast
bei mir is das immer so, dass ich erst ein beispiel brauche um es zu verstehen weißt du

und das was mir bis jetzt hier gesagt wurde habe ich mit dank angenommen und verschiedene varianten davon probiert

ich sitze z.B. jetzt wieder seit 2 stunden vorm pc und beschäftige mich mit meinem quellcode + lese in der unendlichen theorie javas..

trotzdem danke..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Import Pakete oder auflösen . .*, bringt das was? Java Basics - Anfänger-Themen 5
F Klassen und Pakete Projektübergreifend (Eclipse) Java Basics - Anfänger-Themen 6
J Erste Schritte Pakete und Klassen Java Basics - Anfänger-Themen 5
Z Zugriff auf Pakete Java Basics - Anfänger-Themen 5
S Pakete in BlueJ Java Basics - Anfänger-Themen 5
M Imports einzeln oder direkt komplette Pakete .*? Java Basics - Anfänger-Themen 26
J Subklasse soll alle Klassen/Pakete der Superklasse importieren Java Basics - Anfänger-Themen 3
J Pakete Java Basics - Anfänger-Themen 45
J VoiceChat Hilfe - Empfangene Pakete abspielen Java Basics - Anfänger-Themen 6
A Hinzufügen neuer Pakete Java Basics - Anfänger-Themen 5
M Eigene Pakete in Eclipse erstellen Java Basics - Anfänger-Themen 5
P Pakete kompilieren.... Java Basics - Anfänger-Themen 2
B Wie kann ich eigene Pakete nutzen? Java Basics - Anfänger-Themen 10
M Neue Pakete implementieren Java Basics - Anfänger-Themen 5
G Kann keine Pakete runterladen! Java Basics - Anfänger-Themen 3
S Wie .jar - Pakete nutzen? Java Basics - Anfänger-Themen 3
G importieren von pakete Java Basics - Anfänger-Themen 11
N Porblem mit dem Importieren eigener Pakete Java Basics - Anfänger-Themen 4
M Pakete Java Basics - Anfänger-Themen 4
T Pakete und "-cp_ funktionieren net zusammen Java Basics - Anfänger-Themen 2
P Problem: Kann keine externen Pakete importieren Java Basics - Anfänger-Themen 11
N Java2me Pakete importieren Java Basics - Anfänger-Themen 2
P Was sind Pakete? Java Basics - Anfänger-Themen 6
Z Klassen, Pakete und Verzeichnisse Java Basics - Anfänger-Themen 8
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
F Import SSL Zertifikat in keystore Java Basics - Anfänger-Themen 10
M import com.sun.star.uno Java Basics - Anfänger-Themen 25
Darkherobrine9 Import klappt nicht Java Basics - Anfänger-Themen 7
T Probleme beim Import eines Git-Repos Java Basics - Anfänger-Themen 2
java-starter Erste Schritte import von package Java Basics - Anfänger-Themen 4
J The import org.bukkit cannot be resolved Java Basics - Anfänger-Themen 3
E Paketstruktur und import Klauseln Java Basics - Anfänger-Themen 14
D import Befehle Java Basics - Anfänger-Themen 3
E Unterschied zwischen new und import Java Basics - Anfänger-Themen 5
O Package import-Klausel Java Basics - Anfänger-Themen 10
O extrends vs. import Java Basics - Anfänger-Themen 14
B Import Tabelle - Struktur durch User einstellbar Java Basics - Anfänger-Themen 4
W JavaFX import Fehler/Zellularautomaten Java Basics - Anfänger-Themen 1
T Erste Schritte JAR import Fehler Java Basics - Anfänger-Themen 2
Textsurfer Erste Schritte CSV Import Reader Writer Java Basics - Anfänger-Themen 0
S BufferedReader TextFields Import Java Basics - Anfänger-Themen 5
M Best Practice Daten-Import /Trabsfomration aus Textdatei Java Basics - Anfänger-Themen 12
G import utils.SourceHandler; Java Basics - Anfänger-Themen 5
L Klasse/Variable import Java Basics - Anfänger-Themen 7
W Erste Schritte import java.util.scanner funktioniert nicht Java Basics - Anfänger-Themen 2
slejden Erste Schritte der Befehl import Java Basics - Anfänger-Themen 2
D Bitte um Hilfe bei "error: package com.apple.eawt does not exist import com.apple.eawt.*;" Java Basics - Anfänger-Themen 1
B Erste Schritte Way of life ohne import - Habe Beispiel, macht Unfug Java Basics - Anfänger-Themen 21
J BlueJ und import-Anweisungen, wie geht das? Java Basics - Anfänger-Themen 4
I DATEV import / export Java Basics - Anfänger-Themen 2
O Probleme beim import von Projekten in Eclipse Java Basics - Anfänger-Themen 7
C Java Applet Fragen: Serialisierung, Excel import Java Basics - Anfänger-Themen 2
F Import von Zip-Datei in Eclipse Java Basics - Anfänger-Themen 1
? Klassen Verständnisprobleme mit Import Anweisungen Java Basics - Anfänger-Themen 6
FINF_AW_Alex import funktioniert nicht Java Basics - Anfänger-Themen 4
A Import anderer Classen aus anderen Projekten Java Basics - Anfänger-Themen 6
B Doppelte Werte aus Array entfernen ohne Import - Algorithmus Java Basics - Anfänger-Themen 5
M import von eigener Klasse Java Basics - Anfänger-Themen 12
S import java.*; vs import java.awt.TextArea Java Basics - Anfänger-Themen 7
B ThreadPoolExecutor - import java.util.concurrent Java Basics - Anfänger-Themen 2
F import Prog1Tools.IOTools Java Basics - Anfänger-Themen 9
J Aus "import" die genutzte Library erfahren Java Basics - Anfänger-Themen 4
T Erste Schritte import java.lang.System.out Java Basics - Anfänger-Themen 4
E Erste Schritte Import von Klassen Java Basics - Anfänger-Themen 8
B Compiler-Fehler import java.io.*; führt zu error Java Basics - Anfänger-Themen 2
N Probleme mit dem Import Java Basics - Anfänger-Themen 8
J ORACLE Spatial ungültiger Spaltenindex beim Import Java Basics - Anfänger-Themen 2
V Klassen import - einfaches Umleiten auf eigene Klassen? Java Basics - Anfänger-Themen 8
D Geschwindigkeits unterschied bei import? Java Basics - Anfänger-Themen 13
C import Java Basics - Anfänger-Themen 7
O Compiler-Fehler import funktioniert nicht Java Basics - Anfänger-Themen 2
D Import von import org.apache.commons.math3...... Java Basics - Anfänger-Themen 2
J Import in Java Java Basics - Anfänger-Themen 4
A Import Anwendungen Java Basics - Anfänger-Themen 2
D Frage zu der import Anweisung in Java Java Basics - Anfänger-Themen 15
S Erste Schritte import für andere Klassenfiles verfügbar machen? (Java unter Eclipse) Java Basics - Anfänger-Themen 8
F Problem mit import Java Basics - Anfänger-Themen 8
C Umgebungsvariable import anweisung gibt fehlermeldung Java Basics - Anfänger-Themen 2
algebraiker Textdatei-Import Java Basics - Anfänger-Themen 8
T .Java Import Java Basics - Anfänger-Themen 19
N Erste Schritte import javax.media.3d....; //Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 10
N Import Problem, Applet will nicht Java Basics - Anfänger-Themen 6
Q Classpath Package import Java Basics - Anfänger-Themen 6
J Erste Schritte import awt.* ;awt.event.*; Java Basics - Anfänger-Themen 3
B Wie funktioniert der Import von Dritt-packages in Eclipse? Java Basics - Anfänger-Themen 5
C Fehlermeldung "The import TestProjekt cannot be resolved". Warum? Java Basics - Anfänger-Themen 7
W Problem beim CSV-Import Java Basics - Anfänger-Themen 5
K Collections Problem beim import von Packages Java Basics - Anfänger-Themen 10
F Import mit .* oder nicht? Java Basics - Anfänger-Themen 3
D Frage zu Exceptions und der import Anweisung Java Basics - Anfänger-Themen 12
F Problem mit "import" Java Basics - Anfänger-Themen 9
M Import Unicode Textfile Java Basics - Anfänger-Themen 10
S import - Anweisung; Setzen der Classpath Java Basics - Anfänger-Themen 2
W Wann nutze ich "import"? Java Basics - Anfänger-Themen 12
K OOP Java import zwei gleichnamiger Klassen Java Basics - Anfänger-Themen 5
M JS Import aus externer Jar Datei Java Basics - Anfänger-Themen 5
D OpenCSV Fehllender Konstruktor trotz import und Buildpath Eintrag Java Basics - Anfänger-Themen 1
M import einer Grafik aus .jar funktioniert nicht Java Basics - Anfänger-Themen 6
1 JMF Import Problem Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben