java beginner krijgt tutorial niet aan de praat.

Status
Niet open voor verdere reacties.

ventilatorr

Gebruiker
Lid geworden
31 okt 2009
Berichten
99
Ik zit een beetje met java te prutsen en heb de volgende tutorial code:
[JS]/**
* @(#)me.java
*
* me application
*
* @author
* @version 1.00 2011/2/12
*/
// Invoer.java
import java.awt.*; // voor TextField en Label
import java.awt.event.*; // voor ActionEvent
import java.applet.Applet; // voor Applet
public class me extends Applet implements ActionListener {
Label vraag;
TextField invoer;
public void init() {
// Stap1 creëeren
vraag = new Label( "Type het getal in en druk op Enter " );
invoer = new TextField( 10 );
// Stap2 Aanmelden bij de layoutmanager
add( vraag );
add( invoer );
// Stap3 Koppelen van de eventListener
invoer.addActionListener(this);
}
// Stap4 Afhandelen van het ActionEvent
public void actionPerformed( ActionEvent e) {
// Stap5 lezen van de gegevens
String tekst = invoer.getText();
// Stap6 converteren van String naar integer
int getal= Integer.parseInt(tekst);
// Stap7 toon het resultaat
showStatus( "Het getal is " + getal );
}
}
[/JS]
JCreator zegt bij het uitvoeren:
--------------------Configuration: me - JDK version 1.6.0_23 <Default> - <Default>--------------------
java.lang.NoSuchMethodError: main
Exception in thread "main"
Process completed.

Wat doe ik verkeerd?

Ik voel me heel dom nu...:eek:
 
Het is een Applet (er staat geen main() sectie in), dus kun je niet java.exe me doen na compilatie, maar je moet de class starten in een browser.

Ik heb je tekst even aangepast, omdat Classes dienen te beginnen met een hoofdletter. Heb de class bovendien TestMe genoemd, dus moet je het .java bestand ook TestMe noemen (de hele bestandsnaam is dus: TestMe.java)
De inhoud van dat bestand wordt:
HTML:
/**
 * @(#)me.java
 *
 * me application
 *
 * @author
 * @version 1.00 2011/2/12
 */
// Invoer.java
import java.awt.*;      // voor TextField en Label
import java.awt.event.*;        // voor ActionEvent
import java.applet.Applet;  // voor Applet
public class TestMe extends Applet implements ActionListener {
    Label vraag;
    TextField invoer;
    public void init() {
       // Stap1 creëeren
       vraag = new Label( "Type het getal in en druk op Enter " );
       invoer = new TextField( 10 );
       // Stap2 Aanmelden bij de layoutmanager
       add( vraag );
       add( invoer );
       // Stap3 Koppelen van de eventListener
       invoer.addActionListener(this);
    }
       // Stap4 Afhandelen van het ActionEvent
    public void actionPerformed( ActionEvent e) {
       // Stap5 lezen van de gegevens
       String tekst = invoer.getText();
       // Stap6 converteren van String naar integer
       int getal= Integer.parseInt(tekst);
       // Stap7 toon het resultaat
       showStatus( "Het getal is " + getal );
    }
}

Wat je hierna moet doen:
a. Compileer TestMe.java
b. Maak een .htm of .html bestand met de volgende inhoud:
HTML:
<HTML>
<HEAD>
<TITLE>TestMe applet</TITLE>
</HEAD>
<BODY>
<applet code="TestMe.class"> </applet>
</BODY>
</HTML>
c. Kopieer TestMe.class die je in stap a. gemaakt hebt in dezelfde map als het .htm(l) bestand van b.
d. Sleep het gemaakte .htm(l) bestand van b. in een leeg venster van je browser.

Succes,

Tijs.
 
Laatst bewerkt:
normaal gesproken als je met JCreator werkt heb je de JDK al appart staan en heb je naast de General options ook nog de Build options. HIER staat precies in wat er verkeerd is gegaan met je source. Debuggen wordt dan al een stuk makkelijker.
 
Hoe debug je
je gaat naar configuration scherm je klikt op java en plaast console aan voor aplets let op hierdoor gaat voor elke aplet java de console laten zien.

en verder roep je het progje aan door vb
<applet code="Animate.class" >
<param name="image0" value="lh0.gif">
<param name="image1" value="lh1.gif">
<param name="image2" value="lh2.gif">
<param name="image3" value="lh3.gif">
<param name="pause" value="300">
</applet>

waar je class dan onder het zelfde path staat als je htm of html
maar de class dient ook een main te bezitten en gerelateerde files moeten er ook onderstaan zoals je ook extends moet deze file er ook onderstaan.
let op gebruik je javax moet de gebruiker deze ook hebben.
als je javafx gebruikt moet die ook aanwezig zijn maar dit zal je wel al weten
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan