Toon posts:

[java] NoSuchMethodError

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal!

Ik moet een aantal algoritmen implementeren in onderstaande interface, maar mijn enige java-ervaring is alweer een jaar of 5 geleden (toen nog java 1.0).
Deze interface 'as is' compileert wel met de J2SDK, maar bij het uitvoeren geeft ie de foutmelding: Exception in thread "main" java.lang.NoSuchMethodError: main

Hoe komt dat? ontbreekt er een essentieel onderdeel in onderstaande listing?
Hulp wordt enorm op prijs gesteld!

Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import java.awt.*;
import java.awt.event.*;
import java.applet.*;


public class Matching extends Applet implements ActionListener
{
    
    
    TextField input1, input2, input3, result;
    TextArea output;
    Button go;
    
    public void init() 
    {
        input1 = new TextField(30);
        input2 = new TextField(30);
        input3 = new TextField(30);
        go = new Button("GO!");
        output = new TextArea(30,30);
        result = new TextField(30);
        this.add(input1);
        this.add(input2);
        this.add(input3);
        this.add(go);
        this.add(output);
        this.add(result);
        
        go.addActionListener(this);
    
    }

    public void actionPerformed(ActionEvent e)
    {
        String gen1, gen2;
        String matrix_index;
        gen1 =input1.getText();
        gen2 =input2.getText();
        matrix_index =input3.getText();
        
        int [][]tab;
        
        result.setText("Here follows the result");
        
        
        output.setText("Here follows the matrix");
        
    
    }

    // int [][] maakTabel(String gen1, String gen2)
    {
    }

}

[ Voor 7% gewijzigd door .oisyn op 04-04-2004 23:00 ]


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 26-05 23:14
Gebruik [code]-tags, alsjeblieft!

Uit de documentatie van NoSuchMethodError: "Thrown if an application tries to call a specified method of a class (either static or instance), and that class no longer has a definition of that method. Normally, this error is caught by the compiler; this error can only occur at run time if the definition of a class has incompatibly changed. "

Lijkt er dus op dat ofwel je JDK gaar is (installeer 'm opnieuw) of je moet even de classes die je gebruikt opnieuw compileren zodat alles weer up to date is. Je krijgt dan waarschijnlijk wat compilatiefouten of de boel zou weer goed moeten zijn.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 13:15

.oisyn

Moderator Devschuur®

Demotivational Speaker

Wat is dat toch met dat gen00b in de topictitels :?

En het punt is hier dat je een Applet probeert de starten als normale applicatie (en een normale applicatie neeft een public static void main (String[] args) nodig)

[ Voor 64% gewijzigd door .oisyn op 04-04-2004 23:02 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Macros
  • Registratie: Februari 2000
  • Laatst online: 30-04 09:28

Macros

I'm watching...

Waarschijnlijk probeer je hem te starten door java aan te roepen, maar je maakt een applet, dan moet je hem starten in een webbrowser met een html pagina die je applet includes.

"Beauty is the ultimate defence against complexity." David Gelernter


Verwijderd

Je probeert een klasse uit te voeren zonder main methode.
Als applet zal het waarschijnlijk wel werken, maar met 'java Matching' moet je echt een main methode hebben met bvb de inhoud van de init methode.

edit: zoals bovenstaande al voor mij reageerden :/

[ Voor 15% gewijzigd door Verwijderd op 04-04-2004 23:04 ]


Verwijderd

Topicstarter
Ach natuurlijk! Wat stom van mij |:(

Hardstikke bedankt en mijn excuses voor het niet gebruiken van de code-tags! Volgende keer beter!

Verwijderd

Topicstarter
Nog een vraag: ik begrijp het statement:

int [][]tab

niet goed.
In mijn tijd werden arrays gedeclareerd als: int[][] tab
Met voor 'tab' een willekeurig ander label.

Dus wat betekent int [][]tab ?

En in het verlengde daarvan: wat is de betekenis van
int [][] maakTabel(String gen1, String gen2)
?

Met vriendelijke groet!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 26-05 23:14
Arrays, ok?
En dacht je nou echt dat de plaatsing van die spaties wat uitmaakte? ;)

[ Voor 32% gewijzigd door Soultaker op 05-04-2004 00:18 ]


  • Robtimus
  • Registratie: November 2002
  • Laatst online: 09:46

Robtimus

me Robtimus no like you

Verwijderd schreef op 04 april 2004 @ 23:50:
Nog een vraag: ik begrijp het statement:

int [][]tab

niet goed.
In mijn tijd werden arrays gedeclareerd als: int[][] tab
Met voor 'tab' een willekeurig ander label.

Dus wat betekent int [][]tab ?

En in het verlengde daarvan: wat is de betekenis van
int [][] maakTabel(String gen1, String gen2)
?

Met vriendelijke groet!
int[][] tab is gelijk aan int [][]tab is gelijk aan int[][]tab. Welke je kiest is persoonlijke voorkeur (al kies ik voor de eerste, omdat ik het array zijn bij het type vind horen, niet bij de var).

int[][] maakTabel(String gen1, String gen2) is dus een method die 2 strings als parameters heeft en een array van arrays teruggeeft. Dit kan een 2-dimensionaal array zijn (tabel / matrix), maar hoeft niet: de arrays kunnen verschillende lengtes hebben. Altijd op controleren dus!

More than meets the eye
There is no I in TEAM... but there is ME
system specs

Pagina: 1