A Hibák/Figyelmeztetések beállításait a
Java > Fordító >
Hibák/Figyelmeztetések oldalon adhatja meg.
Beállítás |
Leírás |
Alapértelmezés |
---|---|---|
Nem statikus hozzáférés egy statikus taghoz |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha egy statikus mezőhöz vagy metódushoz hozzáférése kifejezésfogadóval történik. Egy statikus tagra vonatkozó hivatkozást típusnévvel kell képezni. |
Figyelmeztetés |
Közvetett hozzáférés egy statikus taghoz |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor egy statikus mezőhöz vagy metódushoz közvetetten történik hozzáférés. Egy felület statikus mezőjét a deklaráló típusnévvel kell minősíteni. |
Figyelmen kívül hagyás |
Minősítetlen hozzáférés példánymezőhöz |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha egy mező hozzáférés nem minősített (pl. kihagy egy 'this' kulcsszót). |
Figyelmen kívül hagyás |
Nem dokumentált üres blokk |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor magyarázó megjegyzések nélküli üres utasítással találkozik. |
Figyelmen kívül hagyás |
Hozzáférés beágyazó típus nem hozzáférhető tagjához |
Ha engedélyezett, akkor a fordító hibát vagy figyelmeztetést jelez, amikor egy beágyazó típus nem hozzáférhető tag hozzáférését emulálja. Az ilyen hozzáférések befolyásolhatják a teljesítményt. |
Figyelmen kívül hagyás |
Konstruktornevet viselő metódusok |
A metódusok konstruktornévvel elnevezése általában szegényes programozási stílusra utal. Ha a beállítás engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi az ilyen szituációkat. |
Figyelmeztetés |
Paraméterhozzárendelés |
Paraméterhez értéket rendelni általában szegényes programozási stílusra utal. Ha a beállítás engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi az ilyen szituációkat. |
Figyelmen kívül hagyás |
Külsőleg nem elérhetővé tett karaktersorozatok |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi a külsőleg elérhetővé nem tett karaktersorozat literálokat (azokat, amelyek nincsenek felcímkézve a //$NON-NLS-<n>$ jelölővel), vagy a karaktersorozathoz nem tartozó, külsőleg elérhetővé nem tett karaktersorozat címkéket. |
Figyelmen kívül hagyás |
Szerializálható osztály serialVersionUID nélkül |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha 'java.io.Serializable' csomagot megvalósító típus nem tartalmazza a serialVersionUID mezőt. |
Figyelmeztetés |
A hozzárendelésnek nincs hatása (pl. 'x = x') |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha egy hozzárendelésnek nincs hatása (pl. 'x = x'). |
Figyelmeztetés |
Lehetséges véletlen logikai típus hozzárendelés (pl. 'if (a = b)') |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha lehetséges véletlen logikai hozzárendeléssel találkozik (pl. 'if (a = b)'). |
Figyelmen kívül hagyás |
A 'finally' blokk nem normálisan fejeződik be |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha egy 'finally' utasítás nem normálisan végződik (pl. return utasítást tartalmaz). |
Figyelmeztetés |
Üres utasítás |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha üres utasítással találkozik (pl. egy felesleges pontosvesszővel). |
Figyelmen kívül hagyás |
Char tömb használata karaktersorozat összefűzésénél |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha karaktersorozat összefűzésénél egy char[] kifejezést használ: "hello" + new char[]{'w','o','r','l','d'} |
Figyelmeztetés |
Rejtett elfogási blokkok |
Try utasításnál néhány elfogási blokk helyben elrejthet más blokkokat, pl. try { throw new java.io.CharConversionException(); } catch (java.io.CharConversionException e) { } catch (java.io.IOException e) {}. Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi az ellenőrzött kifejezésekkel egyező elfogási blokkok elrejtését. |
Figyelmeztetés |
Vararg argumentumok nem pontos típus egyezése |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor vararg argumentumok nem pontos típus egyezésével találkozik. |
Figyelmeztetés |
Típusátalakítások és -visszaalakítások |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor típusátalakítással vagy -visszaalakítással találkozik. Az automatikus típusátalakítás negatív hatással lehet a teljesítményre. |
Figyelmen kívül hagyás |
'switch' által le nem fedett felsorolási típusú konstans |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha olyan switch utasítással találkozik, amely nem tartalmaz case utasításokat a hivatkozott enum minden enum konstansához. |
Figyelmen kívül hagyás |
'switch' eset átesés |
Engedélyezésével a fordító hibát vagy figyelmeztetést jelez, valahányszor 'break' utasítás nélküli eset áteséssel találkozik. Az üres eset átesések engedélyezettek. |
Figyelmen kívül hagyás |
Null hivatkozás |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor egy esetleg null helyi változó hivatkozása megszűnik. Az elemzés meglehetősen konzervatív, csak a gyanús eseteket vizsgálja. |
Figyelmen kívül hagyás |
A mező deklaráció más mezőt vagy változót rejt |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha egy mező deklaráció elrejt egy másik örökölt mezőt. |
Figyelmen kívül hagyás |
Helyi változó deklaráció más mezőt vagy változót rejt |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha egy helyi változó deklaráció elrejt egy másik mezőt vagy változót. |
Figyelmen kívül hagyás |
Konstruktor vagy beállító metódus paraméterek tartalmazása |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha egy konstruktor vagy beállító metódus paraméter elrejt egy másik mezőt vagy változót. |
Ki |
Típus paraméter másik típust rejt |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha pl. egy belső osztály típus paramétere elrejt egy külső típust. |
Figyelmeztetés |
Újradefiniált metódusok látható csomag nélkül |
Egy csomag alapértelmezett metódusa nem látható egy másik csomagban, így nem lehet újradefiniálni. Ha a beállítás engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi az ilyen szituációkat. |
Figyelmeztetés |
Védett 'Object' metódussal ütköző felület metódus |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi, ha egy felület egy nem örökölt objektum metódussal inkompatibilis metódust határoz meg. A konfliktus feloldásáig az ilyen felületet nem lehet megvalósítani, pl. interface I { int clone(); } |
Figyelmeztetés |
Elavult API |
Engedélyezése esetén a fordító hibaként vagy figyelmeztetésként jelzi az elévült API használatát. |
Figyelmeztetés |
Elavult API elévült kódban alkalmazásának jelzése |
Ha engedélyezve van, akkor a fordító jelzi az elavult API elavult kódban történő használatát. A probléma fontosságát az "Elavult API" beállításnál adhatja meg. |
Ki |
Elavult metódus újradefiniálásának vagy megvalósításának jelzése |
Engedélyezésekor a fordító jelzi az elavult metódus újradefiniálását vagy megvalósítását. A probléma fontosságát az "Elavult API" beállításnál adhatja meg. |
Ki |
Tiltott hivatkozások (hozzáférési szabályok) |
Engedélyezésével a fordító jelzi a hozzáférési szabályokban megadott tiltott hivatkozást. |
Hiba |
Nem javasolt hivatkozás (hozzáférési szabályok) |
Engedélyezésével a fordító jelzi a hozzáférési szabályokban megadott nem javasolt hivatkozást. |
Figyelmeztetés |
Sohasem olvassa a helyi változót |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor olyan helyi változó kerül deklarálásra, amit soha nem használ az egység. |
Figyelmeztetés |
Sohasem olvassa a paramétert |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor olyan paraméter kerül deklarálásra, amit soha nem használ az egység. |
Figyelmen kívül hagyás |
Újradefiniáló és megvalósító metódusok ellenőrzése |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor olyan paraméter kerül deklarálásra, amit soha nem használ az egység újradefiniáló vagy megvalósító metódusokban. |
Ki |
Nem használt importálás |
Ha engedélyezve van, akkor a fordító hibaként vagy figyelmeztetésként jelzi a használaton kívüli importálási hivatkozásokat. |
Figyelmeztetés |
Nem használt helyi vagy privát tagok |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor olyan helyi vagy privát tag kerül deklarálásra, amit soha nem használ az egység. |
Figyelmeztetés |
Szükségtelen else utasítás |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha szükségtelen else utasítással találkozik (pl. if (condition) return; else doSomething();). |
Figyelmen kívül hagyás |
Szükségtelen típusmódosítás vagy 'instanceof' művelet |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha szükségtelen cast vagy 'instanceof' művelettel találkozik (pl. if (object instanceof Object) return;). |
Figyelmen kívül hagyás |
Megtörtént kivétel szükségtelen deklarációja |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor megtörtént kivétel szükségtelen deklarációjával találkozik. |
Figyelmen kívül hagyás |
Újradefiniáló és megvalósító metódusok ellenőrzése |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor megtörtént kivétel szükségtelen deklarációjával találkozik újradefiniáló vagy megvalósító metódusban. |
Ki |
Nem használt break/continue címke |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor használaton kívüli 'break' vagy 'continue' címkével találkozik. |
Figyelmeztetés |
Nem ellenőrzött általános típus művelet |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor nem ellenőrzött általános típus művelettel találkozik. |
Figyelmeztetés |
Nyers típusok használata |
Engedélyezésekor a fordító hibát vagy figyelmeztetést jelez, valahányszor nyers típus használatát érzékeli (pl. List a List<String> helyett). |
Figyelmen kívül hagyás |
Általános típus paraméter végleges típus határral deklarálva |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor végleges határt magába foglaló típus határral találkozik. |
Figyelmeztetés |
Hiányzó '@Override' feljegyzés |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, ha egy másik, megvalósított metódust újradefiniáló metódussal találkozik,és hiányzik az '@Override' feljegyzés. |
Figyelmen kívül hagyás |
Hiányzó '@Deprecated' feljegyzés |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor kiegészítő '@Deprecated' feljegyzés nélküli elavult típussal találkozik. |
Figyelmen kívül hagyás |
Felső szintű felületként használt feljegyzés |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor típus megvalósító feljegyzéssel találkozik. Bár lehetséges, ez nem javasolt gyakorlatnak minősül. |
Figyelmeztetés |
Kezeletlen figyelmeztetés jelsorok a '@SuppressWarnings' feljegyzésben |
Engedélyezésével a fordító hibát jelez vagy figyelmeztetést ad, amikor kezeletlen figyelmeztetés jel sorral találkozik '@SuppressWarnings' feljegyzésben. |
Figyelmeztetés |
'@SuppressWarnings' feljegyzések engedélyezése |
Engedélyezése után a fordító feldolgozza a '@SuppressWarnings' feljegyzéseket. |
Be |