Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hi,
ich weiss nicht mehr weiter...
selbst bei einem Beispiel von diesem Forum bekomme ich:
cannot be resolved to a type
In diesem Beispiel das <Test>
Das gleiche Problem auch in NetBeans was zu der vermutung führt das mein System dort mitreinspuckt aber das will ich eigendlich von euch erfahren.
[JAVA=42]
public class DieHauptklasse{
public void macheEtwas(){
ArrayList<Test> myArrList = new ArrayList<Test>();
das ist die version J2SE 1.6
und ich habs schon mit 1.5 durchprobiert,mit und ohne Umschaltung des OSX zwischen 1.5 und 1.6
(generics gehen erst ab Java 5) deshalb hab ich auch das ganze auch mit NetBeans probiert...same shit
Ich denk die meisten von euch haben ne WindowsKiste deshalb werd ich heut Abend das ganze auf VM mit XP auf meinem Mac testen (danach auch native)
Mir wär halt lieber wenn ichs auch unter OSX zum laufen bringen könnte.
Yap,war keine blöde Frage...sicher ist sicher falls ich doch was an der Klaschte hab
Hier ist mein Projekt wo ich gerade dran bin..
und hier kotzt er schon an dem Namen QuizKarte vom der Arraylist ab (zeile 68) Cannot be resolved to a type
Bitte ignoriert die zuvielen Importe aber ich bin immernoch am rumtesten ob ich was vergessen hab
public class NaechsteKarteListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
//QuizKarte karte = new QuizKarte(frage.getText(), antwort.getText());
kartenListe.add(new QuizKarte frage.getText(), antwort.getText());
karteAbraeumen();
}
}
public class MenueSpeichernListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
QuizKarte karte = new QuizKarte(frage.getText(), antwort.getText());
kartenListe.add(karte);
JFileChooser dateiWahl = new JFileChooser();
dateiWahl.showSaveDialog(frame);
dateiSpeichern(dateiWahl.getSelectedFile());
}
}
public class MenueNeuListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
kartenListe.clear();
karteAbraeumen();
}
}
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(datei));
// Iterator kartenIterator = kartenListe.iterator();
// while (kartenIterator.hasNext()) {
// QuizKarte karte = (QuizKarte) kartenIterator.next();
// writer.write(karte.getFrage() + "/");
// writer.write(karte.getAntwort() + "\n");
// } TODO: Dies war die Fassung im Internet, im Buch wurde die
// neue foreach-Schleife verwendet:
Moin
Das Problem lag wirklich an den Klassen die ich in Eclipse erstellt hatte aber nicht zusammen im Package drin hatte.
Sprich ich hatte für meine drei Dateien jeweils ein neues Java-Projekt angelegt...
Dadurch wusste er nicht was mit QuizKarten gemeint ist (Zeile68).
Hallo Leuts,
bei mir funktioniert der QuizkartenAutor auch nicht.
Die Klassen liegen alle in einem package, insgesammt 3 Klassen.
Habe JAVA 1.5, mit Generics hatte ich bisher kein Problem.
Ich kriege eine NullPointerException raus.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at QuizkartenAutor.QuizkartenAutor$NaechsteKarteListener.actionPerformed(QuizkartenAutor.java:121)
at java.awt.Button.processActionEvent(Unknown Source)
at java.awt.Button.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Hier der Code:
Java:
package QuizkartenAutor;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import javax.swing.BoxLayout;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.ScrollPaneConstants;
public class QuizkartenAutor{
private JTextArea frage;
private JTextArea antwort;
private Button naechsteKarte;
private ArrayList<Quizkarte> kartenListe;
private JFrame frame;
//START
public static void main(String[] args) {
QuizkartenAutor autor = new QuizkartenAutor();
autor.init();
}
public void init() {
frame = new JFrame("Quirkarten-Autor");
frame.setSize(300,400);
frame.setVisible(true);
frame.addWindowListener(new MyWindowListener());
BorderLayout layout = new BorderLayout();
frame.setLayout(layout);
//Frage Antwort Eingabebereich
JPanel hauptpanel = new JPanel();
JLabel lbl1 = new JLabel("Die Frage lautet:");
frage = new JTextArea(12,30);
JLabel lbl2 = new JLabel("Die Antwort lautet:");
antwort = new JTextArea(12,30);
JScrollPane fScroller = new JScrollPane(frage);
fScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
fScroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
JScrollPane aScroller = new JScrollPane(antwort);
aScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
aScroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
hauptpanel.setLayout(new BoxLayout(hauptpanel,BoxLayout.Y_AXIS ));
hauptpanel.add(lbl1);
hauptpanel.add(fScroller);
hauptpanel.add(lbl2);
hauptpanel.add(aScroller);
//Button
JPanel buttonpanel = new JPanel();
naechsteKarte = new Button("naechste Karte");
buttonpanel.setLayout(new FlowLayout(FlowLayout.CENTER));
buttonpanel.add(naechsteKarte);
//Menübalken
JMenuBar menueleiste = new JMenuBar();
JMenu menueDatei = new JMenu("Datei");
JMenuItem menuePunktNeu = new JMenuItem("Neu");
JMenuItem menuePunktSpeichern = new JMenuItem("Speichern");
//Die ActionListener
menuePunktNeu.addActionListener(new MenueNeuListener());
menuePunktSpeichern.addActionListener(new MenueSpeichernListener());
naechsteKarte.addActionListener(new NaechsteKarteListener());
menueDatei.add(menuePunktNeu);
menueDatei.add(menuePunktSpeichern);
menueleiste.add(menueDatei);
frame.setJMenuBar(menueleiste);
frame.add(BorderLayout.CENTER, hauptpanel);
frame.add(BorderLayout.SOUTH, buttonpanel);
frame.pack();
}
public class NaechsteKarteListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
Quizkarte karte = new Quizkarte(frage.getText(), antwort.getText());
kartenListe.add(karte);
karteAbraumen();
}
}
public class MenueSpeichernListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
Quizkarte karte = new Quizkarte(frage.getText(), antwort.getText());
kartenListe.add(karte);
JFileChooser dateiWahl = new JFileChooser();
dateiWahl.showSaveDialog(frame);
dateiSpeichern(dateiWahl.getSelectedFile());
}
}
public class MenueNeuListener implements ActionListener {
public void actionPerformed(ActionEvent ev) {
kartenListe.clear();
karteAbraumen();
}
}
private void karteAbraumen() {
frage.setText("");
antwort.setText("");
frage.requestFocus();
}
private void dateiSpeichern(File datei) {
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(datei));
for(Quizkarte karte:kartenListe) {
writer.write(karte.getFrage() + "/");
writer.write(karte.getAntwort() + "\n");
}
writer.close();
}catch(IOException ex) {
System.out.println("konnte in die Kartenliste nicht schreiben");
ex.printStackTrace();
}
}
public class MyWindowListener extends WindowAdapter {
public void windowClosing(WindowEvent ev) {
JFrame frame = null;
System.out.println("Ereignis: <windowClosing>");
frame = (JFrame) ev.getSource();
frame.dispose();
}
}
}
die Fehlermeldung sagt dir die genaue Zeile, hier im Forum nicht ganz, bei dir hoffentlich korrekter
->
NullPointerException bei
> kartenListe.add(karte);
NullPointerException schon mal gehört?
was ist da wohl der naheliegende Gedanke? dass kartenListe null sein könne?
lohnt sich ja zu überprüfen, schneller Blick, nirgendwo wird ein Listen-Objekt zugewiesen, ist also null
ja ich weiß ist schon älteres Thema, aber ich hoffe das mir hier trotzdem geholfen werden kann.
Sitze jetzt auch genau vor dem gleichen Problem, das er "QuizKarte" nicht kennt, mir ist auch klar das die Klasse fehlt, aber wie ich, werdet ihr bestimmt auch die Aufgabe aus dem Buch "Java - Von Kopf bis Fuß" gemacht haben, und hier wird nichts von dieser Klasse geschrieben. Soll heißen ich wüsste laut Buch nicht was in der Klasse stehen soll...
Frage zu denn Packages, des sind ja z.B. in Eclipse nur Ordner in dem ein Projekt mit all seinen Klassen ect. drin liegt oder? Benutze grad Notepad ++ und da brauch ich das ja dann nicht war nur verwundert.
Aber wie gesagt WO KOMMT DIE KLASSE "QuizKarten" her?
da es die Seite 450 des Lehrbuchs ist, darf wohl verlangt werden, dass diese Klasse selber programmiert wird,
zwei einfach String-Attribute, Konstruktor, getter, setter,
wenn das nicht zu schaffen ist dann ist das zugehörige Kapitel sowieso nicht empfehlenswert..
Na klar ist das zu schaffen
Nur hätte man eine kleine Anmerkung machen könne, da ich bei solchen Büchern nie weiß ob die Klasse noch kommt oder wie in dem Beispiel, sie selbst erstellt werden muss. Naja aber dann ist es kein act
Ähm ja grad gesehen auf Seite 448 Steht sogar das man sie selbst machen soll also Schande über mein Haupt ...
war schon bissl her als ich das gelesen hab ^^