Chyby/varování

Zadejte své předvolby nastavení Chyb/varování na stránce předvoleb Otevřít stránku předvoleb Chyby/varování Java > Kompilátor > Chyby/varování.

Styl kódu

Volba

Popis

Výchozí

Nestatický přístup ke statickému členu

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy při přístupu do statického pole nebo metody s použitím zásobníku výrazu. Odkaz na statický člen by měl být kvalifikován názvem typu.

Varování

Nepřímý přístup ke statickému členu

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy při nepřímém přístupu do statického pole nebo metody. Statické pole rozhraní by mělo být provedeno s použitím názvu deklarujícího typu.

Ignorovat

Nekvalifikovaný přístup k poli instance

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu přístupu k poli, které není kvalifikováno (např. chybí 'this').

Ignorovat

Nedokumentovaný prázdný blok

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu příkazu prázdného bloku bez vysvětlující poznámky.

Ignorovat

Přístup k nepřístupnému členu zapouzdřujícího typu

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy při emulaci přístupu k nepřístupnému členu zapouzdřujícího typu. Takovéto přístupy mohou mít dopad na výkon.

Ignorovat

Metoda s názvem konstruktoru

Pojmenování metody názvem konstruktoru je obecně považováno za nesprávný styl programování. Použijete-li tuto volbu, bude kompilátor při rozpoznání tohoto scénáře vytvářet chybové hlášení nebo varování.

Varování

Přiřazení parametrů

Přiřazení hodnoty parametru je obecně považováno za nesprávný styl programování. Použijete-li tuto volbu, bude kompilátor při rozpoznání tohoto scénáře vytvářet chybové hlášení nebo varování.

Ignorovat

Neexternalizované řetězce

Je-li tato volba aktivní, kompilátor bude generovat chybu nebo varování pro neexternalizovaný řetězcový literál (tj. řetězec neoznačený značkou //$NON-NLS-<n>$) nebo pro neexternalizované řetězcové značky, které nepatří do řetězce.

Ignorovat

Potenciální problémy programování

Serializovatelná třída postrádá serialVersionUID

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy, když typ implementující 'java.io.Serializable' neobsahuje pole serialVersionUID.

Varování

Přiřazení nemá žádný efekt (např. 'x = x')

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy, když přiřazení nemá žádný efekt (např. 'x = x').

Varování

Možné náhodné přiřazení logické hodnoty (např. 'if (a = b)')

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování vždy při rozpoznání potenciálně náhodného přiřazení logické hodnoty (např. 'if (a = b)').

Ignorovat

Část 'finally' není ukončena obvyklým způsobem

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při neobvyklém ukončení příkazu 'finally' (např. obsahuje příkaz return).

Varování

Prázdný příkaz

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu prázdného příkazu (např. nadbytečného středníku).

Ignorovat

Použití pole char ve zřetězení řetězce

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy při použití výrazu char[] ve spojování řetězců ,např.

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

Varování

Skrytý zachytávací blok

V rámci příkazu try mohou být některé bloky příkazu catch skrývány jinými bloky catch, např.

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

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování pro skryté bloky příkazu catch podle potvrzených výjimek.

Varování

Nepřesná shoda typu pro argumenty vararg

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu nepřesné shody typu pro argumenty vararg.

Varování

Konverze uzavírání a otevírání

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu konverze uzavírání a otevírání. Automatické uzavírání může mít negativní dopad na výkon.

Ignorovat

Konstanta výčtového typu nepokrytá příkazem 'switch'

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu příkazu switch, který neobsahuje příkazy case pro všechny výčtové konstanty odkazovaného výčtu.

Ignorovat

Neúspěch příkazu 'switch'

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování vždy při rozpoznání přepínače case bez příkazu 'break'. Prázdné přepínače case jsou povoleny.

Ignorovat

Odkaz null

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování při rozpoznání nepřímého odkazu na proměnnou, která může být nulová. Povšimněte si, že analýza je velmi konzervativní - posuzuje pouze případy s podezřelými prvky.

Ignorovat

Stínování a konflikty názvů

Deklarace pole skrývá jiné pole nebo proměnnou

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování, pokud deklarace pole skrývá jiné zděděné pole.

Ignorovat

Deklarace lokální proměnné skrývá jiné pole nebo proměnnou

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení či varování, pokud deklarace lokální proměnné skrývá jiné pole nebo proměnnou.

Ignorovat

Zahrnout konstruktor nebo parametry metody Setter

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení nebo varování, pokud konstruktor nebo parametr metody setter skrývá jiné pole nebo proměnnou.

Vypnout

Parametr typu skrývá jiný typ

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení či varování, pokud např. parametr typu vnitřní třídy skryje vnější typ.

Varování

Potlačené metody, ale neviditelné v balíčku

Výchozí metoda balíčku se nezobrazuje v jiném balíčku, a proto ji nelze potlačit. Použijete-li tuto volbu, bude kompilátor při rozpoznání tohoto scénáře vytvářet chybové hlášení nebo varování.

Varování

Metoda rozhraní koliduje s chráněnou metodou 'Object'

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy, když bude rozhraní definovat metodu nekompatibilní s metodou nezděděného objektu. Dokud nebude tento konflikt vyřešen, nelze takové rozhraní implementovat, např.

rozhraní I {
   int clone();
}

Varování

Nepřípustná a omezená rozhraní API

Nepřípustné rozhraní API

Použijete-li tuto volbu, kompilátor při použití nepřípustného rozhraní API vytvoří chybové hlášení nebo varování.

Varování

Použití signálu nepřípustného rozhraní API uvnitř nepřípustného kódu

Použijete-li tuto volbu, kompilátor bude signalizovat použití nepřípustného rozhraní API uvnitř nepřípustného kódu. Závažnost problému se řídí volbou "Nepřípustné rozhraní API".

Vypnout

Signál potlačující nebo implementující nepřípustnou metodu

Použijete-li tuto volbu, kompilátor bude signalizovat potlačení nebo implementaci nepřípustné metody Závažnost problému se řídí volbou "Nepřípustné rozhraní API".

Vypnout

Zakázaný odkaz (pravidla přístupu)

Použijete-li tuto možnost, kompilátor bude signalizovat zakázaný odkaz uvedený v pravidlech přístupu.

Chyba

Nevhodný odkaz (pravidla přístupu)

Použijete-li tuto možnost, kompilátor bude signalizovat nevhodný odkaz uvedený v pravidlech přístupu.

Varování

Nadbytečný kód

Lokální proměnná se nikdy nečte

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování při rozpoznání deklarace lokální proměnné, která není použita ve svém rozsahu.

Varování

Parametr se nikdy nečte

Je-li tato volba aktivní, kompilátor bude generovat chybu nebo varování při deklaraci parametru, který není ve svém rozsahu použit.

Ignorovat

Zkontrolovat metody zajišťující potlačení a implementaci

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo výstrahu při deklaraci parametru, který není použit ve svém rozsahu v potlačujících nebo implementujících metodách.

Vypnout

Nepoužívaný import

Použijete-li tuto volbu, kompilátor bude pro nepoužitý odkaz importu vytvářet chybové hlášení nebo varování.

Varování

Nepoužívané lokální nebo soukromé členy

Použijete-li tuto volbu, kompilátor bude vytvářet chybové hlášení nebo varování vždy při deklaraci lokálního nebo soukromého členu, pokud tento prvek není v této jednotce použit.

Varování

Zbytečný příkaz else

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu zbytečného příkazu else (např. if (condition) return; else doSomething();).

Ignorovat

Zbytečné přetypování nebo operace 'instanceof'

Použijete-li tuto metodu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu zbytečného přetypování nebo operace 'instanceof' (např. if (object instanceof Object) return;).

Ignorovat

Nadbytečná deklarace vrácené kontrolované výjimky

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu nadbytečné deklarace vyhozené kontrolované výjimky.

Ignorovat

Zkontrolovat metody zajišťující potlačení a implementaci

Použijete-li tuto volbu, kompilátor bude navíc vytvářet chybová hlášení nebo varování vždy při výskytu nadbytečné deklarace vyhozené kontrolované výjimky v metodě zajišťující potlačení nebo implementaci.

Vypnout

Nepoužitý štítek break/continue

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování vždy při rozpoznání nepoužitého štítku 'break' nebo 'continue'.

Varování

Generické typy

Nekontrolovaná operace s generickým typem

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu nekontrolované operace s generickým typem.

Varování

Použití typu raw

Je-li aktivní tato volba, kompilátor bude generovat chybu nebo varování vždy při rozpoznání použití typu raw (tj. Seznam místo Seznam<Řetězec>).

Ignorovat

Je deklarován generický typový parametr s konečnou typovou vazbou

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu typové vazby zahrnující konečný typ.

Varování

Anotace

Chybí anotace '@Override'

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu metody potlačující jinou implementovanou metodu a pokud chybí anotace '@Override'.

Ignorovat

Chybí anotace '@Deprecated'

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu nepřípustného typu bez dodatečné anotace '@Deprecated'.

Ignorovat

Anotace se používá jako superrozhraní

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu typu implementujícího anotaci. Ačkoli je to možné, je to považováno za nesprávný postup.

Varování

Neošetřené tokeny varování v '@SuppressWarnings'

Použijete-li tuto volbu, kompilátor bude vytvářet chybová hlášení či varování vždy při výskytu neošetřeného tokenu varování v anotaci '@SuppressWarnings'.

Varování

Zpřístupnit anotace '@SuppressWarnings'

Použijete-li tuto volbu, kompilátor bude zpracovávat anotace '@SuppressWarnings'.

Zapnout

Související pojmy

Pohled Problémy
Rychlá oprava
Tvůrce Java