Feil/advarsler

Angi preferansene for Feil/advarsler på preferansesiden Åpner preferansesiden Feil/advarsler Java > Kompilator > Feil/advarsler.

Kodestil

Alternativ

Beskrivelse

Standard

Ikke-statisk tilgang til et statisk medlem

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang et statisk felt eller en statisk metode brukes med en uttrykksmottaker. En referanse til et statisk medlem skal fortrinnsvis kvalifiseres med et typenavn.

Advarsel

Indirekte tilgang til et statisk medlem

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang et statisk felt eller en statisk metode brukes indirekte. Et statisk felt i et grensesnitt skal kvalifiseres med deklarerende typenavn.

Ignorer

Ukvalifisert tilgang til forekomstfelt

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en felttilgang som ikke er kvalifisert (f.eks. mangler 'this').

Ignorer

Udokumentert tom blokk

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en tom blokksetning uten forklarende kommentar.

Ignorer

Tilgang til ikke-aksesserbart medlem av innkapslende type

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den emulerer tilgang til et ikke-aksesserbart medlem av en innkapslende type. Slik tilgang kan påvirke ytelsen.

Ignorer

Metode med konstruktørnavn

Å navngi en metode med et konstruktørnavn anses vanligvis som dårlig programmering. Når dette alternativet aktiveres, vil kompilatoren signalisere slike scenarier som feil eller advarsel.

Advarsel

Parametertilordning

Å tilordne en verdi til en parameter blir generelt ansett som dårlig programmering. Når dette alternativet aktiveres, vil kompilatoren signalisere slike scenarier som feil eller advarsel.

Ignorer

Ikke-eksternaliserte strenger

Når dette alternativet er aktivert, sender kompilatoren ut en feilmelding eller advarsel for ikke-eksternaliserte strenglitteraler (det vil si ikke kodet med //$NON-NLS-<n>$) eller for ikke-eksternaliserte strengkoder som ikke tilhører en streng.

Ignorer

Potensielle programmeringsproblemer

Serialiserbar klasse uten serialVersionUID

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en type som implementerer 'java.io.Serializable', ikke inneholder et serialVersionUID-felt.

Advarsel

Tildeling har ingen virkning (f.eks. x = x')

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en tildeling ikke har noen virkning (f.eks. 'x = x').

Advarsel

Mulig uheldig boolsk tilordning (f.eks. 'if (a = b)')

Når dette alternativet er aktivert, sender kompilatoren ut en feilmelding eller advarsel hver gang den støter på en mulig uheldig boolsk tilordning (f.eks. 'if (a = b)').

Ignorer

finally-blokk fullføres ikke på normal måte

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en finally-setning ikke fullføres normalt (f.eks. inneholder en return-setning).

Advarsel

Tom setning

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en tom setning (f.eks. et overflødig semikolon).

Ignorer

Bruke tegnmatrise i strengsammenkjeding

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang et char[]-uttrykk brukes i strengsammenkjeding.

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

Advarsel

Skjulte catch-blokker

Lokalt for en try-setning. Noen catch-blokker kan skjule andre, f.eks.

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

Når dette alternativet aktiveres, vil kompilatoren sende ut en feilmelding eller advarsel for skjulte catch-blokker som svarer til avmerkede unntak.

Advarsel

Unøyaktig typesamsvar for vararg-argumenter

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på et unøyaktig typesamsvar for vararg-argumenter.

Advarsel

Rutings- og avrutingskonverteringer

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en rutings- eller avrutingskonvertering. Autoruting kan påvirke ytelsen negativt.

Ignorer

Enum-typekonstant ikke dekket av 'switch'

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en switch-setning som ikke inneholder case-setninger for hver enum-konstant i referert enum.

Ignorer

'switch' case-gjennomfall (fall-through)

Når dette alternativet er aktivert, vil kompilatoren sende en feilmelding eller advarsel hver gang den støter på en switch case uten 'break'-setning. Tomme switch case er tillatt.

Ignorer

Nullreferanse

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel når den oppdager at en lokal variabel som kan være null, er dereferert. Merk at analysen er temmelig konservativ, den vurderer bare tilfeller der noe virker mistenkelig.

Ignorer

Navneskyggelegging og konflikter

Feltdeklarasjon skjuler felt eller variabel

Når dette alternativet aktiveres, vil kompilatoren sende ut en feilmelding eller advarsel hvis en feltdeklarasjon skjuler et annet arvet felt.

Ignorer

Lokal variabeldeklarasjon skjuler et annet felt eller variabel:

Når dette alternativet aktiveres, vil kompilatoren sende ut en feilmelding eller advarsel hvis en lokal variabeldeklarasjon skjuler et annet arvet felt.

Ignorer

Inkluder metodeparametere for konstruktør eller setter

Når dette alternativet aktiveres, vil kompilatoren sende ut en feilmelding eller advarsel hvis en konstruktør eller setter-metodeparameter skjuler et annet arvet felt eller en annen variabel.

Av

Typeparameter skjuler en annen type

Når dette alternativet aktiveres, vil kompilatoren sende ut en feilmelding eller advarsel hvis f.eks. en typeparameter for en indre klasse skjuler en ytre type.

Advarsel

Metoder overstyrt, men pakke ikke synlig.

En pakkes standardmetode er ikke synlig i en annen pakke, og kan dermed ikke overstyres. Når dette alternativet aktiveres, vil kompilatoren signalisere slike scenarier som feil eller advarsel.

Advarsel

Grensesnittmetode er i konflikt med beskyttet 'Objekt'-metode

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang et grensesnitt definerer en metode som er inkompatibel med en metode for et ikke-arvet objekt. Et slikt grensesnitt kan ikke implementeres før denne konflikten er løst, f.eks.

interface I {
   int clone();
}

Advarsel

Foreldet og begrenset API

Foreldet API

Når dette alternativet er aktivert, vil kompilatoren signalisere bruk av foreldet API som feil eller advarsel.

Advarsel

Signaliser bruk av foreldet API i foreldet kode

Når dette alternativet er aktivert, vil kompilatoren signalisere bruk av foreldet API som feil i foreldet kode. Problemets alvorsgrad kontrolleres med alternativet "Foreldet API".

Av

Signaliser overstyring eller implementering av foreldet metode

Når dette alternativet er aktivert, vil kompilatoren signalisere overstyring eller implementering av en foreldet metode. Problemets alvorsgrad kontrolleres med alternativet "Foreldet API".

Av

Forbudt referanse (tilgangsregler)

Når dette alternativet er aktivert, vil kompilatoren signalisere en forbudt referanse spesifisert i tilgangsreglene.

Feil

Frarådet referanse (tilgangsregler)

Når dette alternativet er aktivert, vil kompilatoren signalisere en frarådet referanse spesifisert i tilgangsreglene.

Advarsel

Unødvendig kode

Lokal variabel blir aldri lest

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en lokal variabel er deklarert, men ikke brukt innenfor sitt område.

Advarsel

Parameter leses aldri

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en parameter deklareres, men ikke brukes innenfor sitt område.

Ignorer

Kontroller overstyrings- og implementeringsmetoder

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang en parameter deklareres, men ikke brukes innenfor sitt område i overstyrings- eller implementeringsmetoder.

Av

Ubrukt import

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding for ubrukt importreferanse.

Advarsel

Ubrukte lokale eller private medlemmer

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang et lokalt eller privat medlem deklareres, men aldri brukes innen samme enhet.

Advarsel

Unødvendig else-setning

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en unødvendig else-setning tom setning (f.eks. if (condition) return; else doSomething();).

Ignorer

Unødvendig cast-uttrykk eller 'instanceof'-operasjon.

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en unødvendig cast- eller instanceof-operasjon (f.eks. if (object instanceof Object) return;).

Ignorer

Unødvendig deklarasjon av kastet avmerket unntak

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en unødvendig deklarasjon av et kastet unntak.

Ignorer

Kontroller overstyrings- og implementeringsmetoder

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en unødvendig deklarasjon av et kastet unntak i en overstyrings- eller implementeringsmetode.

Av

Ubrukt avbrudds-/fortsettelsesetikett

Når dette alternativet er aktivert, sender kompilatoren ut en feilmelding eller advarsel hver gang den oppdager en ubrukt 'break'- eller 'continue'-etikett.

Advarsel

Generiske typer

Usjekket generisk typeoperasjon

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en usjekket generisk typeoperasjon.

Advarsel

Bruk av en ubehandlet type

Når dette alternativet er aktivert, sender kompilatoren ut en feilmelding eller advarsel hver gang den støter på bruk av en ubehandlet type (f.eks. Liste i stedet for <String>).

Ignorer

Generisk typeparameter deklarert med endelig type bundet

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en bundet type som involverer en endelig type.

Advarsel

Annotasjoner

'@Override'-annotasjon mangler

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en metode som overstyrer en annen implementert metode, men ikke har noen @Override-annotasjon.

Ignorer

'@Deprecated'-annotasjoner mangler

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en foreldet type uten '@Deprecated'-annotasjon.

Ignorer

Annotasjon brukes som supergrensesnitt

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på en type som implementerer en annotasjon. Selv om det er mulig, anses dette som dårlig praksis.

Advarsel

Ubehandlede advarselssymboler i '@SuppressWarnings'

Når dette alternativet er aktivert, vil kompilatoren sende ut en feilmelding eller advarsel hver gang den støter på et ubehandlet advarselssymbol i en '@SuppressWarnings'-annotasjon.

Advarsel

Aktiver '@SuppressWarnings'-annotasjoner

Når dette alternativet er aktivert, vil kompilatoren behandle '@SuppressWarnings'-annotasjoner.

Beslektede begreper

Visningen Problemer
Hurtigrettelse
Java-bygger