ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
675
675
EMPFEHLEN
-
Hi@all
Ich hab da nen kleines problem mit dieser klasse. Die Klasse wird in meinem Hauptprogramm aufgerufen und soll allerdings das array Rückgabe zurückgeben. Nur wenn ich ihm ein return befehl gebe kann das prog nich compaliert werden uns sagt mir der method typ wäre void. Warum ist das so und wie kann ich das ändern das er mir das arry zurück gibt.
Greetz and thx for help
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
import java.sql.*; // Notice, do not import org.gjt.mm.mysql.* // or you will have problems! public class Laden { public Laden(){ String[] Rückgabe; // Diese Eintraege werden zum // Verbindungsaufbau benoetigt. final String hostname = "localhost"; final String port = "3306"; final String dbname = "projekt"; final String user = "root"; final String password = ""; Connection conn = null; try { System.out.println("* Treiber laden"); Class.forName("org.gjt.mm.mysql.Driver").newInstance(); } catch (Exception e) { System.err.println("Unable to load driver."); e.printStackTrace(); } try { System.out.println("* Verbindung aufbauen"); String url = "jdbc:mysql://"+hostname+":"+port+"/"+dbname; conn = DriverManager.getConnection(url, user, password); System.out.println("* Statement beginnen"); Statement stmt = conn.createStatement(); System.out.println("* Abfrage beginnen"); String sqlCommand = "SELECT Datum, Gegenstand FROM bestellung"; ResultSet rs = stmt.executeQuery(sqlCommand); System.out.println("* Ergebnisse anzeigen"); while (rs.next()) { String Datum2 = rs.getString(1); String Gegenstand = rs.getString("Gegenstand"); Rückgabe = new String[5]; Rückgabe[0] = Datum2; //System.out.println( Datum+" "+Gegenstand+" "); } System.out.println("* Statement beenden"); stmt.close(); System.out.println("* Datenbank-Verbindung beenden"); conn.close(); } catch (SQLException sqle) { System.out.println("SQLException: " + sqle.getMessage()); System.out.println("SQLState: " + sqle.getSQLState()); System.out.println("VendorError: " + sqle.getErrorCode()); sqle.printStackTrace(); } } }
-
Das ist normal

deine Function ist ja als Konstructor ausgelegt und da ist
von der Sprachvorgabe keine Rückgabe möglich.
Mache aus Deiner Function / Methode ein normale Class Function und dann kann man Werte zurückgeben.
aus
public Laden(){
z.b das machen
public String[] ladeverbindung() {Geändert von melmager (26.02.04 um 08:51 Uhr)
-
public String[] ladeverbindung() {
das sieht mir irgendwie nach nem konstruktor mit nem array aus oder liegt ich heute mal wieder nur daneben. Aso falls es noch einen interresiert der Aufruf sieht folgender massen aus.
Code :1 2 3
private void LadenActionPerformed(java.awt.event.ActionEvent evt) { new Laden(); }
-
Nee das ist kein Konstructor mehr sondern eine Methode oder Function einer Classe
der abgeänderte Aufruf sollte so aussehen:
private void LadenActionPerformed(java.awt.event.ActionEvent evt) {
temp = new Laden();
String werte[] = temp.ladeverbindung();
}
Nur was mich wundert: hier wird kein Stringarray gebraucht -- sprich irgendwas ist
hier oberfaul
Geändert von melmager (26.02.04 um 13:20 Uhr)
-
Big Thx für deine hilfe nu gehts
Ähnliche Themen
-
Methode als Parameter einer Methode übergeben?
Von flashray im Forum JavaAntworten: 5Letzter Beitrag: 21.07.08, 18:35 -
Parameter rückgabe nach Prüfung an Klasse/Methode
Von cr3m4 im Forum Java GrundlagenAntworten: 2Letzter Beitrag: 09.06.08, 10:37 -
Vor Aufruf einer bestimmten Methode immer erst eine andere Methode aufrufen
Von lernen.2007 im Forum JavaAntworten: 2Letzter Beitrag: 06.06.07, 18:37 -
[c++ .net] rückgabe von klasse durch methode
Von Halcom im Forum .NET Windows FormsAntworten: 0Letzter Beitrag: 06.07.06, 13:49 -
rückgabe eines arrays von Methode
Von SMoeller im Forum JavaAntworten: 1Letzter Beitrag: 05.03.06, 13:57





Zitieren
Login





