ClassFormatError: balise de constante inconnue dans la classe XY

J'ai un morceau de code dans lequel j'essaie de charger une classe au cours de l'exécution. Le code n'est pas tous les selfwritten alors j'ai quelques problèmes de compréhension de l'erreur qui a toujours appers après la compilation.

Voici le code:

private Class findClass(String s)
        throws ClassNotFoundException
    {
        URL url = getResource("AP.class");
        if(url == null)
        {
            throw new ClassNotFoundException(s);
        }
        inputstream = null;
        Class classToRead;
        try
        {
            inputstream = url.openStream();
            byte abyte0[] = readClass(inputstream);
            classToRead= defineClass(s, abyte0, 0, abyte0.length);
        }
        catch(IOException ioexception)
        {
            throw new ClassNotFoundException(s);
        }
        if(inputstream != null)
        {
            try
            {
                inputstream.close();
            }
            catch(Exception exception1) { }
        }
        return classToRead;
    }

L'erreur s'affiche à l'defineClass méthode.

Erreur stacktrace:

Exception in thread "main" java.lang.ClassFormatError: Unknown constant tag 63 in class file AP
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at c.findClass(c.java:100)
    at c.loadClass(c.java:56)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at c.a(c.java:20)
    at mainOpenClass.main(lol.java:13)

Mes questions maintenant:
Est peut-être quelque chose de mal avec le code?
Est-il possible que l'AP.class est-il endommagé?
Que signifie l'erreur signifie vraiment?

J'espère que quelqu'un peut m'aider avec mon problème parce que la recherche de l'internet n'a pas vraiment aider dans ce cas.

source d'informationauteur Mister004