as of release 1.4, 'assert' is a keyword, and may not be used as an identifier Het woord 'assert' is een keyword in de Java taal. Je mag het niet gebruiken als naam voor je methods of variaberen. Kies een andere naam. qualified new of static class Geen help beschikbaar. * is abstract; cannot be instantiated The class is declared "abstract". That means that it contains some methods for which it does not provide an implementation ("abstract methods"). You cannot create objects of abstract classes. You need to find or write a subclass of the abstract class that implements all abstract methods. You can then create objects of that class. abstract methods cannot have a body You have declared a method "abstract" and you have written a method body. That is a contradiction. Abstract method declarations have only a method header, followed by a semicolon. Either remove the "abstract" keyword, or remove the method body. * is already defined in * There is already a variable (or maybe a parameter) in this method that has the same name. Use a different name for this one. (Or maybe you meant to use the same variable here? Then remove the type name here so that it does not look like a new declaration.) anonymous class implements interface; cannot have arguments Geen help beschikbaar anonymous class implements interface; cannot have qualifier for new Geen help beschikbaar array required, but * You are using syntax here that suggests that you are trying to access an array element. The variable you refer to is not an array, though. break outside switch or loop The "break" statement breaks out of a block, such as a "switch" statement or a loop ("for", "while" or "do" loop). It cannot be used outside of such a block. * must be first statement in constructor As the very first thing in every class that has a superclass, you should call the superclass's constructor. You do that by adding super(...); as the first line of your constructor (where you replace the dots with the appropriate parameters). Trying to use members of the superclass before calling it's constructor is bound to be trouble! cannot access * Geen help beschikbaar cannot assign a value to final variable * The variable you are trying to assign to here has been declared "final". That means that you are not allowed to change its value later on. If you really need to change the value, remove the "final" keyword from the variable declaration. type variables cannot be dereferenced You cannot use dot notation to try to access member fields or methods for type variables. * cannot be dereferenced You are using dot notation to access a field or method of another object. However, the variable you are using is not of an object type - it does not have fields or methods. cannot inherit from final * The superclass (the class listed after the "extends" keyword) is declared final. That means that it specifically prohibits subclasses. Sorry - you cannot subclass it if it doesn't want you to... * before supertype constructor has been called As the very first thing in every class that has a superclass, you should call the superclass's constructor. You do that by adding super(...); as the first line of your constructor (where you replace the dots with the appropriate parameters). Trying to use members of the superclass before calling it's constructor is bound to be trouble! cannot return a value from method whose result type is void A void result type in a method signature means that this method will not return any result. The method body should not have a statement within it that returns a value. cannot select a static class from a parameterized type Geen help beschikbaar * cannot be inherited with different arguments:* Geen help beschikbaar 'catch' without 'try' "catch" is a Java keyword that can only appear after a "try" block. The correct pattern is try { statements; } catch(Exception e) { statements; } * clashes with package of same name Make sure that the class and the package have different names. Usually, classes should start with a capital letter, while package names start with a lowercase letter. code too large for try statement You have too much code inside this try statement. Put the code into a separate method and insert a method call here. constant expression required You have used a variable or an expression here, but that's illegal. You can only use constants here. Constants are number literals (such as 42) or identifiers declared as "final". continue outside of loop The "continue" statement is used to immediately start the next loop iteration. It has no meaning outside of a loop. It can only be used inside a "for", "while" or "do" loop. cyclic inheritance involving * You are trying to extend a class here, but that class has already declared that it extends yours! Well, that cannot work! You have to decide which one is the superclass and which is the subclass. * does not exist The name you used here (which could be either an attempt to name a variable, a class or a package) does not exist. There was neither a variable nor a class nor a package with this name. duplicate class:* There appears to already be a class of this name. duplicate case label You have used the same label twice in the same "switch" statement. duplicate default label You have written "default" twice inthe same switch statement. You cannot do that - once is enough. 'else' without 'if' An 'else' keyword can only appear as part of an 'if' statement, in the form if (condition) statement; else statement; Maybe you just forgot the braces around the statements? If you have more than one statement after the if, you have to add braces, like this: if (condition) { statement1; statement2; } else { statement3; } empty character literal You have written a literal character that is empty. You cannot write ''. A character constant is a single character enclosed in single quotes, for example 'a'. Most of the time, there can be only one single character between the quotes. The only exception is if the first character is the backslash (called the "escape character") for specifying special characters, eg. '\n' or '\t'. * has already been caught This catch statement is useless. It can never be executed, because all exceptions that it is declared to catch are already caught by another catch statement above it. * is never thrown in body of corresponding try statement You have declared that you want to catch an exception here. But I can tell you that this exception will never be thrown here! There is no statement in the "try" block that throws this exception. 'finally' without 'try' "finally" is a Java keyword that can only appear after a "try" block. The correct pattern is try { statements; } catch(Exception e) { statements; } finally { statements; } floating point number too large The system cannot cope with floating point numbers this big. floating point number too small The system cannot cope with floating point numbers this small inner classes cannot have static declarations You cannot declare static types in nested classes. If you need a static type here, declare it in the outer class. illegal character:* There is an illegal character here in the source file. This character may be invisible. If you cannot find it to delete it, delete the whole line and type it again. illegal combination of modifiers: * You have tried to combine two Java modifiers which are considered an illegal pairing. It is likely that the meaning of each is contradictory to each other. An example of this would be defining a method as abstract and native, final, private or synchronized. illegal escape character An escape character is written with a backslash and a second character, for example '\n'. This is used to specify special characters. There is only a fixed set of characters that may appear after the backslash. They are \n, \t, \b, \r, \f, \\, \', \" and numbers. If you want to write the backslash itself, write "\\" - this will be replaced by a single backslash in your string. illegal forward reference Geen help beschikbaar illegal initializer for * Geen help beschikbaar illegal line end in character literal You have a line break where a character literal should be specified. You cannot do that. If you want to specify the character for a line break ("newline") write it as '\n'. illegal qualifier; {0} is not an inner class Geen help beschikbaar illegal start of expression Geen help beschikbaar illegal start of type At a position in the source where the name of a type was expected, there was something else (most likely a Java keyword). Check this line for incorrect type definitions. illegal unicode escape Geen help beschikbaar improperly formed type, some parameters are missing Geen help beschikbaar incomparable types: * Geen help beschikbaar integer number too large: * You have written a number that is too large to fit into the data type that is expected here. You need to use a larger data type (for example, "long" instead of "int"). internal error; cannot instantiate * Geen help beschikbaar * but with different return type You may be trying to combine two methods that have the same signature except for return type. This is not allowed. Most likely, this is happening because your class implements two interfaces. Each interface has a method with the same name and parameters, but different return type. You cannot implement both these interfaces unless you change one to avoid this. Either rename that method, or make the return type the same. interface expected here An interface can only extend another interface. The name you have specified after the "extends" keyword is not an interface. interface methods cannot have body Interface methods must be declarations only. That means that they should contain a method header followed by a semicolon. There should be no method body. hexadecimal numbers must contain at least one hexadecimal digit You have specified a hexadecimal number. (This is done by starting a number with "0X".) In hexadecimal numbers, you must have at least one digit after the "X". invalid method declaration; return type required A method declaration must have a declared return type. For example, if your method returns a String, write public String myMethod(); If you do not want to return a value from this method, use the special word "void" to indicate that there is no return type. For example public void myMethod(); * already in use There is already a variable (or maybe a parameter) in this method that has the same name. Use a different name for this one. (Or maybe you meant to use the same variable here? Then remove the type name here so that it does not look like a new declaration.) * is accessed from within inner class; needs to be declared final Local variables cannot usually be accessed by inner classes. But that is exactly what you are trying to do here. You have two options: You can remove this access to the local variable, or you can make the variable "final" - then you can access it. malformed floating point literal You have made some mistake in writing a floating point number. (A floating point number is one with a decimal point in it.) Examples of correctly written floating point numbers are 18.0 18. 1.8e1 .18E2 missing method body, or declare abstract Methods must either have a body or be abstract. A method body is the block in curly braces { } that follows the method header and contains statements. If a method does not have a body then it must have the keyword "abstract" in its header. For example: public abstract int getAnswer(); missing return statement Here, you've got a method that is declared to return a value. There is, however, no "return" statement in the body of the method. That doesn't fit together. You must either: - declare the return type of the method as "void" if you don't want to return a value, or - write a "return" statement with the correct return type at the end of the method, for example return 42; The type of the return value must match the declared type in the method header. missing return value Here, you have written a "return" statement that does not return a value. The method header, however, declares that this method returns a value. You must either declare that this method does not return a value (by using "void" as the return type in the method header), or you must return a value of the correct type, for example return 42; or return "Marvin"; name clash: * You have defined two methods with the same name. This is ony allowed if one overrides the other (which is not the case here). One of the names needs to be changed. * is reserved for internal use The term shown is reserved for internal use, if it is name of a variable or class you will need to change it. native methods cannot have a body You have declared a method "native" and you have written a method body. Native method declarations have only a method header, followed by a semicolon. Either remove the "native" keyword, or remove the method body. no enclosing instance of type {0} is in scope Geen help beschikbaar no interface expected here You are referring to an interface here (possibly in an "extends" declaration of a class). A class can only extend other classes (not interfaces). If you want to implement this interface, use the "implements" keyword instead. {0} has no match in entry in {1}; required {2} Geen help beschikbaar * is not defined in a public class or interface; cannot be accessed from outside package Geen help beschikbaar * cannot be accessed from outside package The class you are trying to use here is not a pubic class. That is: it's definition does not start with public class ... If a class is not public, it cannot be used outside its own package. If you really need to use the class, you must change its definition to make it public. not a loop label: * The labels you use for loop operations such as continue