Fel/varningar

Du anger inställningar för fel och varningar på inställningssidan Öppnar inställningssidan Fel/varningar Java > Kompilator > Fel/varningar.

Kodformat

Alternativ

Beskrivning

Standard

Icke-statisk access till statisk medlem

När det här alternativet är aktivt utfärdar kompilatorn ett fel eller en varning när ett statiskt fält eller metod används med en uttrycksmottagare. En referens till en statisk medlem ska kvalificeras med ett typnamn.

Varning

Indirekt access till statisk medlem

Vid aktivering visas ett fel- eller varningsmeddelande de gånger ett statiskt fält eller en statisk metod accessas indirekt. Ett statiskt fält för ett gränssnitt ska kvalificeras med det deklarerande typnamnet.

Ignorera

Okvalificerad access till förekomstfält

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en fältaccess som inte är kvalificerad (t.ex. saknar 'this') påträffas.

Ignorera

Odokumenterat tomt block

Vid aktivering visas ett fel- eller varningsmeddelande de gånger ett tomt blockuttryck utan förklarande kommentar påträffas.

Ignorera

Access till en medlem i en omslutande typ som inte går att accessa

När det här alternativet är aktivt utfärdar kompilatorn ett fel eller en varning när den emulerar åtkomst till en icke åtkomstbar medlem av en omslutande typ. Sådan access kan innebära prestandaimplikationer.

Ignorera

Metod med konstruktornamn

Att ge en metod namnet på en konstruktor anses vanligen inte vara god programmeringssed. Vid aktivering meddelas ett sådant scenario med ett fel- eller varningsmeddelande.

Varning

Parametertilldelning

Att tilldela en parameter ett värde anses vanligen inte vara god programmeringssed. Vid aktivering meddelas ett sådant scenario med ett fel- eller varningsmeddelande.

Ignorera

Icke-externaliserade strängar

Vid aktivering visas ett fel- eller varningsmeddelande för strängkonstanter som inte är externaliserade (d.v.s. inte är märkt med //$NON-NLS-<n>$) eller för strängmärkord som inte är externaliserade och som inte tillhör en sträng.

Ignorera

Potentiella programmeringsproblem

Serialiserbar klass utan serialVersionUID

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en typ som implementerar 'java.io.Serializable' inte innehåller ett serialVersionUID-fält.

Varning

Tilldelning utan effekt (exempelvis 'x = x')

Vid aktivering visas ett fel- eller varningsmeddelande när en tilldelning inte har någon effekt (t.ex. 'x = x').

Varning

Möjlig boolesk tilldelning av misstag (exempelvis 'if (a = b)')

Vid aktivering visas ett fel- eller varningsmeddelande när en boolesk tilldelning som möjligen tilldelats av misstag påträffas (t.ex. "if (a = b)").

Ignorera

"finally" slutförs inte normalt

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en 'finally'-sats inte slutförs normalt (t.ex. innehåller en retursats).

Varning

Tom sats

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en tom sats (t.ex. ett överflödigt semikolon) påträffas.

Ignorera

Användning av teckenmatriser i strängsammanslagning

Vid aktivering visas ett fel- eller varningsmeddelande de gånger ett char[]-uttryck används i strängsamanslagningar.

"hello" + new char[]{'w','o','r','l','d'}

Varning

Dolt catch-block

Lokalt för en try-sats kan det hända att vissa catch-block döljer andra, t.ex.

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

Vid aktivering visas ett fel- eller varningsmeddelande för dolda catch-block som motsvarar kontrollerade undantag.

Varning

Oskarp typmatchning för vararg-argument

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en oskarp typmatchning för vararg-argument påträffas.

Varning

Konverteringar av typomslutning

Vid aktivering visas ett fel- eller varningsmeddelande de gånger konverteringar av typomslutningar påträffas. Automatisk omslutning kan påverka prestandan negativt.

Ignorera

Enum-typkonstant täcks inte av "switch"

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en 'switch'-sats påträffas som inte innehåller typomvandlingssatser för varje enumerationskonstant till refererad enumeration.

Ignorera

"switch"-fall som inte fångar upp:

Vid aktivering visas ett fel- eller varningsmeddelande de gånger den träffar på ett switch-fall (typomvandling) utan någon "break"-sats. Tomma typomvandlingar är tillåtna.

Ignorera

Nullreferens

När alternativet är aktivt utfärdar kompilatorn ett fel eller en varning när den upptäcker att en lokal variabel som kanske är null är dereferens. Observera att analysen är rätt försiktig, då den bara beaktar fall där det finns något misstänkt.

Ignorera

Namnskuggning och konflikter

Fältdeklarationer döljer fält eller variabel

Vid aktivering visas ett fel- eller varningsmeddelande om en fältdeklaration döljer ett annat ärvt fält.

Ignorera

En lokal variabeldeklaration döljer fält eller variabel

Vid aktivering visas ett fel- eller varningsmeddelande om en lokal variabeldeklaration döljer ett annat fält eller en annan variabel.

Ignorera

Ta med konstruktor eller setter-metodparametrar

Vid aktivering visas ett fel- eller varningsmeddelande om en konstruktor eller set-metodparameter döljer ett annat fält eller en annan variabel.

Av

Typparameter döljer annan typ

Vid aktivering visas ett fel- eller varningsmeddelande om t.ex. en typparameter för en inre klass döljer en yttre typ.

Varning

Ersatta metoder utan synligt paket

En paketstandardmetod är inte synlig i ett annat paket och kan därför inte åsidosättas. Vid aktivering meddelas ett sådant scenario med ett fel- eller varningsmeddelande.

Varning

Gränssnittsmetod i konflikt med skyddad "Object"-metod:

Vid aktivering visas ett fel- eller varningsmeddelande de gånger ett gränssnitt definierar en metod som inkompatibel med en icke-ärvd Object-metod. Så länge konflikten kvarstår kan inte gränssnittet implementeras, t.ex.

interface I {
   int clone();
}

Varning

Avvecklade och begränsade API:er

Utkommenterat API

När det här alternativet är aktiverat signalerar kompilatorn användning av avskrivet API antingen som ett fel eller som en varning.

Varning

Signalera användning av avvecklat API inuti avvecklad kod

När det här alternativet är aktiverat signalerar kompilatorn användning av avskrivet API inuti avskriven kod. Allvarlighetsgraden på problemet kontrolleras med alternativet "Utkommenterat API".

Av

Signalera ersättning eller implementering av avvecklad metod

När det här alternativet är aktiverat signalerar kompilatorn ersättning eller implementering av en avskriven metod. Allvarlighetsgraden på problemet kontrolleras med alternativet "Utkommenterat API".

Av

Förbjuden referens (accessregler)

När det här alternativet är aktiverat signalerar kompilatorn att en förbjuden referens har angetts i accessreglerna.

Fel

Olämplig referens (accessregler)

När det här alternativet är aktiverat signalerar kompilatorn att en olämplig referens har angetts i accessreglerna.

Varning

Onödig kod

Lokal variabel som aldrig läses

När det här alternativet är aktiverat utfärdar kompilatorn ett fel eller en varning när en lokal variabel deklareras men som aldrig används inom sitt omfång.

Varning

Parameter som aldrig läses

När det här alternativet är aktiverat utfärdar kompilatorn ett fel eller en varning när en parameter deklareras men som aldrig används inom sitt omfång.

Ignorera

Kontrollera ersättande och implementerande metoder

När det här alternativet är aktiverat utfärdar kompilatorn ett fel eller en varning när en parameter deklareras men som aldrig används inom sitt omfång i ersättande och implementerande metoder.

Av

Oanvänd import

Vid aktivering visas ett fel- eller varningsmeddelande för referenser till oanvända importer.

Varning

Oanvända lokala eller privata medlemmar

Vid aktivering visas ett fel- eller varningsmeddelande när en lokal eller privat medlem deklareras men som aldrig används inom samma enhet.

Varning

Onödig else-sats

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en onödig else-sats påträffas (t.ex. if (condition) return; else doSomething();).

Ignorera

Onödig typomvandling eller 'instanceof'-operation

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en onödig typomvandling eller 'instanceof'-operation påträffas (t.ex. if (object instanceof Object) return;).

Ignorera

Onödig deklaration av inträffat kontrollerat undantag

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en onödig deklaration av ett mottaget undantag påträffas.

Ignorera

Kontrollera ersättande och implementerande metoder

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en onödig deklaration av ett mottaget undantag påträffas i en ersättande eller implementerande metod.

Av

Oanvänd bryt/fortsätt-etikett

När alternativet är aktivt visas ett fel- eller varningsmeddelande de gånger kompilatorn träffar på en oanvänd break- eller continue-etikett.

Varning

Generiska typer

Okontrollerad generisk typoperation

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en okontrollerad generisk typoperation påträffas.

Varning

Användning av rå typ

När alternativet är aktivt visas ett fel- eller varningsmeddelande de gånger kompilatorn träffar på användning av en rå typ (dvs. List i stället för List<String>).

Ignorera

Generisk typparameter som deklareras med typbindningen final

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en typbindning med typen final påträffas.

Varning

Anteckningar

Saknad '@Override'-anteckning

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en metod som ersätter en annan implementerad påträffas utan '@Override'-anteckningen.

Ignorera

Saknad '@Deprecated'-anteckning

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en avskriven typ påträffas utan '@Deprecated'-anteckning.

Ignorera

Anteckning används som supergränssnitt

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en typ som implementerar en anteckning påträffas. Även om det är möjligt att göra så, anses det vara dålig programmering.

Varning

Ohanterade varningstoken i '@SuppressWarnings'

Vid aktivering visas ett fel- eller varningsmeddelande de gånger en ohanterad varningstoken påträffas i en '@SuppressWarnings'-anteckning.

Varning

Aktivera '@SuppressWarnings'-anteckningar

Vid aktivering bearbetas '@SuppressWarnings'-anteckningarna.

Närliggande begrepp

Problemvyn
Snabbrättning
Java-byggfunktion