Archiv verlassen und diese Seite im Standarddesign anzeigen : "Dummes" Compile Problem - erkennt List... nicht !?!?
hi,
ich hab hier ein "komisches" Problem mit dem Kompilieren eines Sources, ein Kumpel hat ihn mir gegeben zum "überprüfen", bei ihm funzt es bei mir nicht.
ich hab mal alternativ ein sehr kleines prog geschrieben , bei dem taucht auch ein prob mit List auf. btw. im "original" prog gibts auch probs mit Panel....
import java.awt.*;
import java.awt.event.*;
public class Ta extends Frame
{
List meine_liste;
Button ba;
String teststring = "hallo";
public Ta(String Fenstertitel)
{
super(Fenstertitel);
meine_liste = new List(1);
ba = new Button("My Button");
meine_liste.add(teststring);
}
public static void main(String args[])
{
Ta f = new Ta("Copyright by aulh");
f.show();
}
}
dieses code snippet produziert beim versuch es zu kompilieren folgende fehler:
C:\Eigene Dateien\Source\Ta.java:14: cannot resolve symbol
symbol : constructor List (int)
location: class List
meine_liste = new List(1);
^
C:\Eigene Dateien\Source\Ta.java:16: cannot resolve symbol
symbol : method add (java.lang.String)
location: class List
meine_liste.add(teststring);
^
2 errors
-----------
was ist da falsch ?
mfg
maceop
anda_skoa
17-02-2003, 21:17
Da fehlt das import für java.util.List
Ciao,
_
peschmae
18-02-2003, 08:06
neee, der will doch java.awt.List, nicht wahr?
http://java.sun.com/j2se/1.4.1/docs/api/java/awt/List.html
MfG Peschmä
peschmae
18-02-2003, 08:26
Hallo zusammen,
also bei mir geht der Code!
Allerdings würde ich im Konstruktor nach meine_liste.add(teststring) unbedingt noch das hinzufügen:
add(ba, BorderLayout.SOUTH);
add(meine_liste, BorderLayout.CENTER);
//Damit werden die dinger richtig im Layout platziert und überhaupt erst richtig angezeigt
setSize(500, 500); //Nur die Titelleiste sieht a bisserl blöd aus
ba.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
//Knopfklick schliesst programm
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
//Klick auf Programm - Beenden knopferl in Titelleiste ebenso
MfG Peschmä
anda_skoa
18-02-2003, 10:29
Original geschrieben von peschmae
neee, der will doch java.awt.List, nicht wahr?
Ah, natürlich!
java.util.List ist ja nur ein Interface, da gibt es gar keinen Construktor :rolleyes:
Ciao,
_
anda_skoa
18-02-2003, 10:29
Original geschrieben von peschmae
Hallo zusammen,
also bei mir geht der Code!
Allerdings würde ich im Konstruktor nach meine_liste.add(teststring) unbedingt noch das hinzufügen:
Kleiner Tipp:
code tags :)
Ciao,
_
danke für eure tipps, nur aus welchem grund funzt es nicht ??? bis vor kurzem hatte ich solche probs noch nicht, ich habe mal meine src.jar "geöffnet" (doppelklick), seitdem habe ich nichts mehr mit List gemacht.
Als ich gestern nochmal das ausprobieren wollte, funzte es nicht mehr.
mfg
maceop
peschmae
18-02-2003, 12:00
@anda_skoa soso :D
@maceop:
Hat er _nur_ mit List - Objekten Probleme? Geht es wenn du sie immer mit java.awt.List ansprichst?
(ohne codetags ;-):
java.awt.List meine_liste;
...
meineListe = java.awt.List(1);
MfG Peschmä
danke, werds mal gleich ausprobieren,
mfg
maceop
also wenn ich die Deklaration der List mit java.awt.List ersetze und im Konstruktor statt ... = new List(int what) , .... = new java.awt.List(int what) schreibe funzt es.
wie gesagt, es gibt die selben probs mit Panel, dort mach ich es genauso, also java.awt.Panel.
ideen für diesen "Fehler" ?
mfg
maceop
anda_skoa
18-02-2003, 16:48
Vielleicht sind andere Klassen mit diesen Namen importiert oder im aktuellen Package.
Eben im Fall der List zum Beispiel das import für java.util.List
Dann kann der Compiler wahrscheinlich nicht entscheiden, welche Klasse er nehmen soll.
Nur ein Veracht :)
Ciao,
_
peschmae
18-02-2003, 19:00
wie sieht denn dein CLASSPATH aus? Hast du nur ein JRE installiert, oder sind es mehrere? (Das könnte vielleicht den Compiler verwirren) - evtl. die von der Distri und noch sonst eine dazu (schliesslich bringt jdk 1.4 ja wirklich was ;-))
Allerdings finde ich die Tatsache, dass das Problem auch bei einem Panel auftritt recht speziell - eine List nennt man ja schnell noch mal was. Gibts noch andere Sachen, wo du das Problem hast?
Ist irgendwas speziell an deiner (Java) - Installation?
MfG Peschmä
also ich werd zuhause nachgucken und wenn möglich beantworten.
was mich wirklich "überrascht" :
bis vor kurzem funktionierte ALLES, ohne das lästige java.awt. davor zu setzen, seitdem ich auf diese src.jar geklickt habe funzt es nicht mehr richtig. kann es etwas damit zu tun haben ?
mfg
maceop
sorry anda_skoa, ganz vergessen deine frage zu beantworten ;)
Original geschrieben von anda_skoa
Vielleicht sind andere Klassen mit diesen Namen importiert oder im aktuellen Package.
Eben im Fall der List zum Beispiel das import für java.util.List
_
Nein, dass kann ich ausschließen. Dann hätte er eben im einfachen Beispiel eigentlich nicht meckern dürfen, weil doch nur awt.* und awt.event.* importiert wurden (oder sehe ich das falsch das hier keine "mehrdeutigkeiten" vorliegen könnten ?, btw. ich glaub der compiler bemängelt das mit so was wie "there are ambiguities between java.awt.List and java.util.List....")
trotzdem danke für den Verdacht ! ;)
peschmae: an meiner installation ist nichts besonders, wir haben in der schule das "paket" vom jdk1.3.1 bekommen und entwickeln unsere programme unter realj. dort habe ich im projektfenster (für classpath) geschrieben : -classpath .
Das funktioniert auch ....
jede hilfe ist mir willkommen... !
mfg
maceop
peschmae
19-02-2003, 14:04
gehts mit
import java.awt.List;
???
MfG Peschmä
sorry habs vor lauter "Aufregung" wohl nicht hingeschrieben : ja funzt !
nur würde mich eben trotdzem interessieren warum ich es "explizit" ansprechen muss, anstatt wie "früher" einfach nur List.
btw. danke für den diesen Tipp !
mfg
maceop
peschmae
20-02-2003, 10:57
keine Ahnung, ich habe das selbe Problem an einer bestimmten Stelle beim kompilieren von SWT mit GCJ ...
MfG Peschmä
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.