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.
sry wenn diese Frage dämlich ist, aber ich programmiere halt sozusagen erst seit ca. 1 Woche und bin auch erst 14...
Undzwar programmiere ich mit eclipse und eclipse streicht mir bei diesem Quellcode, bei Class Play extends ..., dass Play gelb an, mit der Begründung, "The serializable class Play does not declare a static final serialVersionUID field of type long"
Ich versteh nicht von irgendwelchen serialVersionUID-zeug und vor allem warum soll ich da iwas mit einem field of type long machen!?
Code:
import java.awt.Color;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Play extends JFrame implements ActionListener
{
private JButton bChange ;
public Play(String title)
{
super(title);
initGUI();
}
private void initGUI()
{
// set frame properties
setSize(850,500);
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
// set content pane properties
getContentPane().setLayout( new GridLayout(10,1));
getContentPane().setBackground(Color.WHITE);
// initialize gui components
bChange = new JButton("Play now");
bChange.addActionListener(this);
// set actions
getContentPane().add( bChange );
}
public void actionPerformed( ActionEvent evt)
{
System.out.println("Tut mir leid dies ist noch nicht eingebaut!");
}
public static void main ( String[] args )
{
Start haupt = new Start ("test");
haupt.setVisible( true );
}
}
Was er mit dieser long-ziffer hat, weiß ich auch nicht, aber Eclipse bietet dir die Möglichkeit dieses zu ignorieren wenn du ihm sagst, es soll das unterdrücken: SuppressWarnings("serial") dann ist er weg.
BTW gelb unterstrichenes in Eclipse ist nur eine Warnung, aber kein Fehler, wenn man es ignoriert im Grunde
Das ist nur eine Warnung, die kann ignoriert werden.
Du kannst auch mit dem Mauszeiger um die Warnung gehen und im Tooltip so eine ID erzeugen lassen.
Die sähe dann z.B. so aus:
Code:
private static final long serialVersionUID = -8061459983989232038L;
Ok, aber ich habe vergessen das eigentliche Problem reinzuschreiben, sry;
Wenn ich dann auf run drücke wird eine Windows-Fehlermeldung geöffnet mit der Überschrifft Java Virtual Machine Launcher, in der ein dickes X in einem roten Kreis ist, daneben steht A Java Exception has occurred.
Wie kann ich das ändern?
Als Fehlermeldung zeigt Eclipse unten in der Box folgendes an:
Exception in thread "main" java.lang.NoClassDefFoundError: play (wrong name: Play)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Kann das z.B. heißen, dass ich diese Serialnummer ding da machen muss damit ich es wieder starten kann.?!
MfG KingEldarion
EDIT: Hab mal eins Serialding generieren lassen, hat nix gebracht..
java.lang.NoClassDefFoundError: play (wrong name: Play)
Dein Problem liegt wohl eher darin, dass die Klasse play nicht gefunden wird. Wo genau, sehe ich auf die schnell auch nicht.
Eventuell "public" vor den Klassennamen schreiben ?