Fouten/Waarschuwingen

Geef uw voorkeuren voor fouten/waarschuwingen aan op de voorkeurenpagina Voorkeurenpagina Fouten/Waarschuwingen openen Java > Compileerprogramma > Fouten/Waarschuwingen.

Codestijl

Optie

Beschrijving

Standaardwaarde

Niet-statische toegang tot statisch lid

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er toegang tot een statische veld of statische methode is verkregen met een expressie-ontvanger. Een verwijzing naar een statisch lid moet worden gekwalificeerd met een typenaam.

Waarschuwing

Indirecte toegang tot een statisch lid

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er indirecte toegang tot een statische veld of statische methode is verkregen. Een statisch veld van een interface moet worden gekwalificeerd met de naam van een declarerend type.

Negeren

Niet-gekwalificeerde toegang tot instance-veld

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer ongekwalificeerde toegang is verkregen tot een veld (dus wanneer 'this' ontbreekt).

Negeren

Niet-gedocumenteerd leeg blok

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een leeg blok wordt gevonden zonder begeleidend commentaar.

Negeren

Toegang tot een niet-toegankelijk lid van een insluittype

Als deze optie is ingeschakeld, geef het compileerprogramma een foutbericht of een waarschuwing wanneer de toegang tot een niet-toegankelijk lid van een insluitend type wordt geëmuleerd. Een dergelijke vorm van toegang kan nadelig zijn voor de prestaties.

Negeren

Methode met een constructornaam

Het geven van een constructornaam aan een methode wordt algemeen gezien als iets dat een goede programmeur niet doet. Als u deze optie inschakelt, beschouwt het compileerprogramma dit scenario als een fout en verstuurt een foutbericht of waarschuwing.

Waarschuwing

Parametertoewijzing

Het toewijzen van een waarde aan een parameter wordt algemeen gezien als iets wat een goede programmeur niet doet. Als u deze optie inschakelt, beschouwt het compileerprogramma dit scenario als een fout en wordt een foutbericht of een waarschuwing gegeven.

Negeren

Niet-geëxternaliseerde tekenreeksen

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing voor niet-geëxternaliseerde String-literalen (die dus niet zijn voorzien van //$NON-NLS-<n>$) of voor niet-geëxternaliseerde String-literalen die niet van het type String zijn.

Negeren

Mogelijke programmeerproblemen

Serialiseerbare klasse zonder serialVersionUID

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een type met een implementatie van java.io.Serializable niet het veld serialVersionUID bevat.

Waarschuwing

Toewijzing zonder effect (bijv. 'x = x')

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een toewijzing zinloos is (bijv. 'x = x').

Waarschuwing

Mogelijke niet-opzettelijke booleaanse toewijzing (bijv. if (a = b)')

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een mogelijk onbedoelde booleaanse toewijzing wordt aangetroffen (bijvoorbeeld 'if (a = b)').

Negeren

'finally' wordt niet normaal voltooid

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een 'finally'-instructie niet normaal wordt beëindigd (omdat deze bijvoorbeeld een return-instructie bevat).

Waarschuwing

Lege instructie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een lege instructie wordt aangetroffen.

Negeren

Tekenarray in samenvoeging van tekenreeksen

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een char[]-expressie wordt gebruikt in een samenvoeging van tekenreeksen:

"hallo" + new char[]{'w','e','r','e','l','d'}

Waarschuwing

Verborgen catch-blokken

Sommige catch-blokken die bij een lokale try-instructie horen, kunnen andere catch-blokken verbergen. Voorbeeld:

try { throw new java.io.CharConversionException();
} catch (java.io.CharConversionException e) {
} catch (java.io.IOException e) {}.

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er verborgen catch-blokken worden aangetroffen die corresponderen met de geselecteerde uitzonderingen.

Waarschuwing

Niet-exacte overeenkomst voor vararg-argumenten

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een niet-exacte overeenkomst voor het type van vararg-argumenten wordt aangetroffen.

Waarschuwing

Boxing- en unboxing-conversies

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een (un)boxing-conversie wordt aangetroffen. Autoboxing-conversies kunnen een negatieve uitwerking op de prestaties hebben.

Negeren

Constante van enum-type niet opgenomen in switch-instructie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een switch-instructie wordt aangetroffen die geen case-vertakkinge bevat voor alle enum-constanten van de enum waarnaar verwezen wordt.

Negeren

Case-doorloop in switch-instructie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer in een switch-instructie een case-vertakking zonder break-instructie wordt aangetroffen. Lege case-vertakkingen zijn wel toegestaan.

Negeren

Null-verwijzing

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een lokale variabele die mogelijk null is wordt gederefereerd. Deze analyse is vrij oppervlakkig en meldt alleen problemen voor vreemde situaties.

Negeren

Naamoverlapping en -conflicten

Declaratie van veld verbergt ander veld of andere variabele

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een velddeclaratie een ander overgenomen veld verbergt.

Negeren

Declaratie van lokale variabele verbergt ander veld of andere variabele

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer de declaratie van een lokale variabele een ander veld of een andere variabele verbergt.

Negeren

Parameters voor constructor- of setter-methoden opnemen

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer de parameter van een constructor- of settermethode een ander veld of een andere variabele verbergt.

Uit

Typeparameter verbergt ander type

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een typeparameter van een binnenklasse een type op hoger niveau verbergt.

Waarschuwing

Methode genegeerd maar niet zichtbaar voor pakket

Een standaardmethode in een pakket is in een ander pakket niet zichtbaar en kan dus niet worden vervangen. Als u deze optie inschakelt, beschouwt het compileerprogramma dit scenario als een fout en wordt een foutbericht of een waarschuwing gegeven.

Waarschuwing

Conflicten van interfacemethoden met beschermde 'Object'-methode

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een interface een methode definieert die niet compatibel is met een niet-overgenomen Object-methode. De interface kan pas worden geïmplementeerd als het conflict is opgelost, bijvoorbeeld met:

interface I {
   int clone();
}

Waarschuwing

Gedeprecieerde en beperkte API

Gedeprecieerde API

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er gedeprecieerde API wordt gebruikt.

Waarschuwing

Gebruik van gedeprecieerde API in gedeprecieerde code melden

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er gedeprecieerde API in gedeprecieerde code wordt gebruikt. De severity van het probleem wordt beheerd met de optie "Gedeprecieerde API".

Uit

Vervangende of implementerende gedeprecieerde methode melden

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een gedeprecieerde methode wordt vervangen of geïmplementeerd. De severity van het probleem wordt beheerd met de optie "Gedeprecieerde API".

Uit

Niet-toegestane verwijzing (toegangsregels)

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een niet-toegestane verwijzing in de toegangsregels wordt aangetroffen.

Fout

Niet-aanbevolen verwijzing (toegangsregels)

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een niet-aanbevolen verwijzing in de toegangsregels wordt aangetroffen.

Waarschuwing

Overbodige code

Lokale variabele niet gelezen

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een lokale variabele wel wordt gedeclareerd maar niet wordt gebruikt in het bereik waarbinnen deze geldig is.

Waarschuwing

Parameter niet gelezen

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een parameter wel wordt gedeclareerd maar niet wordt gebruikt in het bereik waarbinnen deze geldig is.

Negeren

Vervangende en implementerende methoden controleren

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer in een vervangende of een implementerende methode een parameter wordt gedeclareerd die vervolgens niet wordt gebruikt in het bereik waarbinnen de parameter geldig is.

Uit

Niet-gebruikte import

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer er een ongebruikte importverwijzing wordt aangetroffen.

Waarschuwing

Niet-gebruikt lokaal of private-lid

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een lokaal of besloten lid wel wordt gedeclareerd maar niet binnen dezelfde eenheid wordt gebruikt.

Waarschuwing

Overbodige else-instructie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een onnodige else-instructie wordt aangetroffen (voorbeeld: if (voorwaarde) return; else doeIets();).

Negeren

Overbodige uitvoering van 'instanceof'-bewerking

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een onnodige cast- of 'instanceof'-bewerking wordt aangetroffen (voorbeeld: if (object instanceof Object) return;).

Negeren

Overbodige declaratie van opgeroepen gecontroleerde uitzondering

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een onnodige declaratie van een verworpen uitzondering wordt aangetroffen.

Negeren

Vervangende en implementerende methoden controleren

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een onnodige declaratie van een verworpen uitzondering wordt aangetroffen in een vervangende of implementerende methode.

Uit

Niet-gebruikt label break/continue

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een niet-gebruikt break- of continue-label wordt aangetroffen.

Waarschuwing

Generieke typen

Niet-gecontroleerde bewerking van generiek type

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een niet-gecontroleerde bewerking van een generiek type wordt aangetroffen.

Waarschuwing

Gebruik van een onbewerkt type

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een onbewerkt type wordt aangetroffen (bijvoorbeeld List in plaats van List<String>).

Negeren

Parameter van generiek type gedeclareerd met grens van final-type

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een typegrens wordt aangetroffen waarin een final-type voorkomt.

Waarschuwing

Annotaties

Ontbrekende '@Override'-annotatie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een methode wordt aangetroffen die een andere geïmplementeerde methode vervangt terwijl de '@Override'-annotatie ontbreekt.

Negeren

Ontbrekende '@Deprecated'-annotatie

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een gedeprecieerd type wordt aangetroffen zonder aanvullende '@Deprecated'-annotatie.

Negeren

Annotatie wordt gebruikt als superinterface

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een type wordt aangetroffen dat een annotatie implementeert. Dit is mogelijk, maar wordt gezien als iets wat een goede programmeur niet doet.

Waarschuwing

Niet-afgehandeld waarschuwingstoken in '@SuppressWarnings'

Als deze optie is ingeschakeld, geeft het compileerprogramma een foutbericht of een waarschuwing wanneer een niet-afgehandeld waarschuwingstoken wordt aangetroffen in een '@SuppressWarnings'-annotatie.

Waarschuwing

'@SuppressWarnings'-annotaties inschakelen

Als deze optie is ingeschakeld, verwerkt het compileerprogramma '@SuppressWarnings'-annotaties.

Aan

Verwante concepten

View Problemen
Snelfix
Java-builder