wat betekent deze melding in eclipse?

Status
Niet open voor verdere reacties.

romanosan

Gebruiker
Lid geworden
7 okt 2007
Berichten
88
Severity and Description Path Resource Location Creation Time Id
The serializable class opstartklasse does not declare a static final serialVersionUID field of type long hoofdstuk2/src opstartklasse.java line 3 1192820743375 73

kan iemand mij helpen ?
 
Severity and Description Path Resource Location Creation Time Id
The serializable class opstartklasse does not declare a static final serialVersionUID field of type long hoofdstuk2/src opstartklasse.java line 3 1192820743375 73

kan iemand mij helpen ?


Ik kan namelijk wel gewoon runnen en dat werkt prima.
 
Kan je je code eens laten zien?

oke, dit is de code van mijn opstartklasse:

import javax.swing.*;

public class opstartklasse extends JFrame {

public static void main( String args[] ) {
JFrame frame = new opstartklasse();
frame.setSize( 500, 100 );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setTitle( "All know the way; few actually walk it." );
JPanel oefening2_10 = new oefening2_10();
frame.setContentPane(oefening2_10);
frame.setVisible( true );

}
}
 
oke, dit is de code van mijn opstartklasse:

import javax.swing.*;

public class opstartklasse extends JFrame {

public static void main( String args[] ) {
JFrame frame = new opstartklasse();
frame.setSize( 500, 100 );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setTitle( "All know the way; few actually walk it." );
JPanel oefening2_10 = new oefening2_10();
frame.setContentPane(oefening2_10);
frame.setVisible( true );

}
}

Ik heb die opstartklasse apart gemaakt als klasse. Is dat zo handiger of zou ik het ook onder elkaar kunnen schrijven

maar dit is dus de code van mijn paneel :

import javax.swing.*;

import java.awt.event.*;

public class oefening2_10 extends JPanel {
private JButton knop1, knop2;
private JTextField tekstvak,tekstvak2;

public oefening2_10() {
knop1 = new JButton( "Voornaam" );
knop1.addActionListener( new KnopHandler1() );

knop2 = new JButton ("Achternaam");
knop2.addActionListener (new KnopHandler2());

tekstvak = new JTextField( 10 );
tekstvak2 = new JTextField (10);

add( knop1 );
add( knop2 );
add( tekstvak );
add ( tekstvak2);


}

class KnopHandler1 implements ActionListener {
public void actionPerformed( ActionEvent e ) {
tekstvak.setText( "blablabla" );
}
}

class KnopHandler2 implements ActionListener {
public void actionPerformed( ActionEvent e ) {
tekstvak2.setText( "achternaamblahblah" );
}
}


}

 
Laatst bewerkt:
Code:
import javax.swing.*;

public class opstartklasse extends JFrame {

public static void main( String args[] ) {
this.setSize( 500, 100 );
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setTitle( "All know the way; few actually walk it." );
JPanel oefen2_10 = new oefening2_10();
this.setContentPane(oefen2_10);
this.setVisible( true );

}
}

Waarom maak je een nieuwe opstartklasse aan terwijl de class waarin je dat doet al een opstartklasse is?
Dan kan je beter zichzelf aan laten roepen.
Je kan het beste een variabele niet hetzelfde noemen als een class.. Als je een class oefening2_10 hebt, dan kan je het beste ook een variabele aanmaken die een andere naam heeft. Bijvoorbeeld oefen2_10.

Daarnaast kan je het beste alle klasses in een aparte file doen.
Dan krijg je later ook niet problemen met de benamingen van de bestanden en houdt je een beter overzicht.
 
Laatst bewerkt:
super. De melding is nu weg, dankjewel. Had het trouwens met mijn code te maken of gebeurt het standaard als je eclipse pas geinstalleerd hebt?

Ik ben ook maar een simpele Java-beginner die gisteren toevallig op hetzelfde probleem stuitte hoor :-)

Maar voor zover ik het begrijp komt de melding doordat je een class extend die iets met serialization doet. Dat betekent dat je daar in subclasses ook rekening mee moet houden eigenlijk. Maar als je toch niet van plan bent iets met serialization te gaan doen kan je het ook gewoon zo laten, en dus de warning uitschakelen.
 
Ik ben ook maar een simpele Java-beginner die gisteren toevallig op hetzelfde probleem stuitte hoor :-)

Maar voor zover ik het begrijp komt de melding doordat je een class extend die iets met serialization doet. Dat betekent dat je daar in subclasses ook rekening mee moet houden eigenlijk. Maar als je toch niet van plan bent iets met serialization te gaan doen kan je het ook gewoon zo laten, en dus de warning uitschakelen.

oke cool. Welke IDE gebruik jij? Ik gebruik Eclips
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan