Der Typ von <Klasse> ist fehlerhaft Fehler in netbeans

Ich habe zwei Klassen für ein java-Programm, das ich Schreibe, rufen Sie Class1 und Class2. Im Körper des Konstruktors für Klasse1, rufe ich den Konstruktor für die Klasse 2. Allerdings bin ich immer der compile-Fehler

 "The type of Class1(JSONObject) is erroneous". 

Ich habe versucht, googeln dieser Fehler konnte aber nicht finden, jede Diskussion über genau dieses Fehler überall, so dass ich dachte, ich würde post es zu stack exchange.

Könnte jemand bitte erklären, welche Art von Fehler es sich handelt? Beide class1 und class2 sind sehr einfach: beide haben nur einen Konstruktor-Methode, die dauert ein JSONObject als argument in beiden Fällen. Die einzigen Importe sind für JSON. Irgendwelche Ratschläge?

//class1 definition
public class Class1 {
       public Class1(JSONObject jObject){
           try{
           //parsing json and saving class variables
           } catch(Exception e)
           {
               System.out.println("Class1 JSON Exception: " + e.getMessage());
           }
       }
}


//constructor of Class2
Class1 user;

public Class2(JSONObject jObject){
    try{
    JSONObject userJSON = jObject.getJSONObject("user");
    user = new Class1(userJSON); //error occurrs here
    }
    catch(Exception e){
   System.out.println("Class2 JSON Exception: " + e.getMessage());

    }
}

}

EDIT: wenn ich versuche den code auszuführen, der auch mit diesem kompilieren Fehler, bekomme ich folgenden Laufzeitfehler:

Exception in thread "main" java.lang.ExceptionInInitializerError
at bitcoin.thesis.Client.main(BTCJamClient.java:18)
Caused by: java.lang.RuntimeException: Uncompilable source code - Erroneous tree type:        
thesis.JSONArray
at thesis.Class3.<clinit>(Class3.java)
... 1 more
Java Result: 1

Class3 hier ist eine Klasse, die einen default-Konstruktor. Client ist die Hauptklasse, die die http-Anfrage und gibt das JSON-Objekt auf Class2-Konstruktor. Im Grunde ist dies der Teil, der die Ausführung von code vor Class1 und Class2-Konstruktoren sind auch aufgerufen. So ist es nicht, die direkt von der compile error, aber ich vermute, Sie sind mit dem gleichen problem, das tun Sie generell mit meiner Codierung-Umgebung.

Dank,
Paul

  • Poste deinen aktuellen code.
  • Vielleicht haben Sie etwas verändert und gespeichert wird, aber die Klassen nicht generiert. konfigurieren Compile On Save
  • 1) Poste die genaue Fehlermeldung (copy/paste, der eigentliche text, 2) Poste den code mit der Zeile, gab den Fehler zu. 3) Post alle zugehörigen code vor die Zeile.
  • Vielen Dank an alle. Ich dachte, dass diese Art von Fehler kann etwas, das nichts mit dem code, wie das, was Braj vorgeschlagen. Aber ich poste den relevanten code.
  • auch "compile on save" eingeschaltet ist.
  • Was ist userJSON und wo hast du es definieren?
  • Sorry, ich versehentlich gelöscht, die Zeile. Es kommt aus dem JSONObject übergeben wird, in den Konstruktor von Class2. Jetzt ist es aktualisiert.
  • Hi, meist jObject.getJSONObject("user"); gibt null zurück, und die nächste Zeile geht null auf Class1 Konstruktor , user = new Class1(userJSON); und diesem Class1-Konstruktor erwartet json, erhält aber eine null kann ein Problem sein,..nicht ganz sicher, überprüfen Sie es einmal
  • Hi Karibasappa, vielen Dank für Ihre Beratung. Die Sache ist, dass ich kann nicht einmal auf, dass ein Teil von meinem code. Die Fehler, die ich mich beziehe, ist eine compile-Zeit-Fehler. Ich gepostet, mehr details über das, was geschieht, wenn ich versuche zu laufen, in ein edit oben.
  • Niemand hat eine Ahnung was dieser Fehler bedeutet? auch im Allgemeinen?

InformationsquelleAutor Paul | 2014-05-04
Schreibe einen Kommentar