Voit määrittää virheiden ja varoitusten oletusasetukset oletusasetussivulla
Java > Kääntäjä > Virheet/varoitukset.
|
Asetus |
Kuvaus |
Oletusarvo |
|---|---|---|
|
Staattisen jäsenen ei-staattinen käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, kun staattista kenttää tai metodia on käytetty lausekkeen vastaanottajalla. Viittaus staattiseen jäseneen on tarkennettava tyypin nimellä. |
Varoitus |
|
Epäsuora staattisen jäsenen käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, kun staattista kenttää tai metodia käytetään epäsuorasti. Rajapinnan staattinen kenttä on tarkennettava esittelevän tyypin nimellä. |
Ohita |
|
Tarkentamaton ilmentymäkentän käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen, kun se havaitsee kentän käytön, jota ei ole tarkennettu (esimerkiksi "this" puuttuu). |
Ohita |
|
Dokumentoimaton tyhjä lohko |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen havaitessaan tyhjän lohkon lauseen ilman selittävää kommenttia. |
Ohita |
|
Sisällytystyypin sellaisen jäsenen käyttö, joka ei ole käytettävissä |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen emuloidessaan sisältävän tyypin sellaisen jäsenen käyttöä, joka ei ole käytettävissä. Tällaisilla käytöillä voi olla vaikutuksia suoritustehoon. |
Ohita |
|
Metodi, jolla on konstruktorin nimi |
Metodin nimeämistä konstruktorin nimellä pidetään yleisesti huonona ohjelmointitapana. Kun tämä asetus on käytössä, kääntäjä ilmoittaa tällaisista tapauksista joko virheenä tai varoituksena. |
Varoitus |
|
Parametrin arvon osoitus |
Parametrin arvon osoitusta pidetään yleisesti huonona ohjelmointitapana. Kun tämä asetus on käytössä, kääntäjä ilmoittaa tällaisista tapauksista joko virheenä tai varoituksena. |
Ohita |
|
Ulkoistamattomat merkkijonot |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen ulkoistamattomista merkkijonon literaaleista (joita ei ole merkitty tunnisteella //$NON-NLS-<n>$) ja ulkoistamattomista merkkijonotunnisteista, jotka eivät kuulu merkkijonoon. |
Ohita |
|
Peräkkäistettävä luokka ilman serialVersionUID-kenttää |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen, kun luokan "java.io.Serializable" toteuttava tyyppi ei sisällä serialVersionUID-kenttää. |
Varoitus |
|
Osoituksella ei ole vaikutusta (esim. "x = x") |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen, kun osoituksella ei ole vaikutusta (esim. "x = x"). |
Varoitus |
|
Mahdollinen tahaton Boolen arvon osoitus (esim. "if (a = b)") |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan mahdollisen tahattoman Boolen arvon osoituksen (esimerkiksi "if (a = b)"). |
Ohita |
|
"Finally" ei pääty normaalisti |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen aina, kun "finally"-lause ei pääty normaalisti (sisältää esimerkiksi paluulauseen). |
Varoitus |
|
Tyhjä lause |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen havaitessaan tyhjän lauseen (esimerkiksi tarpeettoman puolipisteen). |
Ohita |
|
Käytetään char-taulukkoa merkkijonon liitostuksessa |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen aina, kun merkkijonon liitostuksissa käytetään char[]-lauseketta, "hello" + new char[]{'w','o','r','l','d'} |
Varoitus |
|
Piilotetut catch-lohkot |
Jotkin catch-lohkot voivat piilottaa toisia try-lauseen sisällä, esim. try { throw new java.io.CharConversionException();} catch (java.io.CharConversionException e) {} catch (java.io.IOException e) {}.Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen valittuja poikkeuksia vastaavia piilotettuja catch-lohkoja varten. |
Varoitus |
|
Epätarkka tyypin vastine vararg-argumenteille |
Kun tämä asetus on käytössä, kääntäjä tuottaa virheen tai varoituksen havaitessaan epätarkan tyypin vastineen vararg-argumenteille. |
Varoitus |
|
Lokeroinnin ja lokeroinnin purun muunnokset |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan lokeroinnin tai lokeroinnin purun muunnoksen. Automaattinen lokerointi saattaa huonontaa suoritustehoa. |
Ohita |
|
Switch-lause ei kata enum-tyypin vakiota |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai tai varoitusilmoituksen havaitessaan switch-lauseen, joka ei sisällä case-lauseita jokaista viitatun luetteloinnin enum-vakiota varten. |
Ohita |
|
Toteutumaton switch-lauseen case-haara |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan switch-lauseen case-haaran, jossa ei ole break-lausetta. Tyhjät switch-lauseen case-haarat ovat sallittuja. |
Ohita |
|
Paikanvarausosoittimen käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan, että varmuudella tyhjäarvoisen (null) paikallismuuttujan arvo haetaan. Huomaa, että analyysi ei pysty löytämään kaikkia tyhjän osoittimen käyttöjä. Katso kohta Mahdollisen paikanvarausosoittimen käyttö. |
Ohita |
|
Mahdollisen paikanvarausosoittimen käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan, että mahdollisesti tyhjäarvoisen (null) paikallismuuttujan arvo haetaan. Huomaa, että analyysi on melko varovainen ja siinä huomioidaan vain epäilyttävät tapaukset. |
Ohita |
|
Kentän esittely piilottaa toisen kentän tai muuttujan |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, jos kentän esittely piilottaa toisen perityn kentän. |
Ohita |
|
Paikallismuuttujan esittely piilottaa toisen kentän tai muuttujan |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai tai varoitusilmoituksen, jos paikallismuuttujan esittely piilottaa toisen kentän tai muuttujan. |
Ohita |
|
Sisällytä konstruktorin tai asetusmetodin parametrit |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, jos konstruktori tai asetusmetodi piilottaa toisen kentän tai muuttujan. |
Ei käytössä |
|
Tyypin parametri piilottaa toisen tyypin |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, jos esimerkiksi sisäisen luokan tyyppiparametri piilottaa ulkoisen tyypin. |
Varoitus |
|
Metodit on ohitettu, mutta ne eivät ole näkyviä paketissa |
Paketin oletusmetodi ei ole näkyvissä eri paketeissa, joten sitä ei voi ohittaa. Kun tämä asetus on käytössä, kääntäjä ilmoittaa tällaisista tapauksista joko virheenä tai varoituksena. |
Varoitus |
|
Rajapintametodi on ristiriidassa suojatun Object-metodin kanssa |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen aina, kun rajapinta määrittää metodin yhteensopimattomaksi ei-perityn Object-metodin kanssa. Tällaista rajapintaa ei voi toteuttaa, ennen kuin ristiriita on ratkaistu. Esimerkki: interface I { int clone();} |
Varoitus |
|
Vanhentunut API-sovellusohjelmaliittymä |
Kun tämä asetus on käytössä, kääntäjä ilmoittaa vanhentuneen sovellusohjelmaliittymän käytöstä joko virheen tai varoituksen muodossa. |
Varoitus |
|
Ilmoitus vanhentuneen API-sovellusohjelmaliittymän käytöstä vanhentuneen koodin sisällä |
Kun tämä asetus on käytössä, kääntäjä ilmoittaa vanhentuneen API-sovellusohjelmaliittymän käytöstä vanhentuneen koodin sisällä. Häiriön vakavuutta ohjataan asetuksella "Vanhentunut API-sovellusohjelmaliittymä". |
Ei käytössä |
|
Ilmoitus korvaavan tai toteuttavan vanhentuneen koodin käytöstä |
Kun tämä asetus on käytössä, kääntäjä ilmoittaa vanhentuneen metodin korvauksesta tai toteutuksesta. Häiriön vakavuutta ohjataan asetuksella "Vanhentunut API-sovellusohjelmaliittymä". |
Ei käytössä |
|
Kielletty viite (saantisäännöt) |
Kun tämä asetus on käytössä, kääntäjä ilmoittaa saantisäännöissä määritetystä kielletystä viitteestä. |
Virhe |
|
Ei-suositeltu viite (saantisäännöt) |
Kun tämä asetus on käytössä, kääntäjä ilmoittaa saantisäännöissä määritetystä ei-suositellusta viitteestä. |
Varoitus |
|
Paikallismuuttujaa ei koskaan lueta |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, kun esiteltyä paikallismuuttujaa ei käytetä omassa alueessaan. |
Varoitus |
|
Parametria ei koskaan lueta |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, kun esiteltyä paikallismuuttujaa ei käytetä omassa alueessaan. |
Ohita |
|
Tarkista korvaavat ja toteuttavat metodit |
Kun tämä asetus on käytössä, kääntäjä tuottaa lisäksi virhe- tai varoitusilmoituksen, kun esiteltyä paikallismuuttujaa ei käytetä oman alueensa korvaavissa tai toteuttavissa metodeissa. |
Ei käytössä |
|
Ohita parametrit, jotka on dokumentoitu "@param"-tunnisteella |
Kun tämä asetus on käytössä, kääntäjä ei tuota virheilmoitusta tai varoitusta, kun lukematon parametri on dokumentoitu "@param"-tunnisteella. |
Käytössä |
|
Käyttämätön tuonti |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen käyttämättömistä tuontiviittauksista. |
Varoitus |
|
Käyttämättömät paikalliset tai yksityiset jäsenet |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen aina, kun paikallinen tai yksityinen jäsen esitellään, mutta sitä ei koskaan käytetä samassa yksikössä. |
Varoitus |
|
Ylimääräinen tyhjäarvon tarkistus |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen, kun paikallinen muuttuja, jonka arvo ei voi olla tyhjä, tarkistetaan tyhjäarvon varalta. |
Ohita |
|
Tarpeeton else-lause |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan tarpeettoman else-lauseen (esimerkiksi if (condition) return; else doSomething();)). |
Ohita |
|
Tarpeeton lajinvaihto- tai instanceof-toiminto |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan tarpeettoman lajinvaihto- tai "instanceof"-toiminnon (esimerkiksi if (object instanceof Object) return;). |
Ohita |
|
Tarpeeton thrown checked -poikkeuksen esittely |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan tarpeettoman tuotetun poikkeuksen esittelyn. |
Ohita |
|
Tarkista korvaavat ja toteuttavat metodit |
Kun tämä asetus on käytössä, kääntäjä tuottaa lisäksi virhe- tai varoitusilmoituksen havaitessaan tarpeettoman tuotetun poikkeuksen esittelyn korvaavassa tai toteuttavassa metodissa. |
Ei käytössä |
|
Käyttämätön break- tai continue-nimiö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan käyttämättömän break- tai continue-nimiön. |
Varoitus |
|
Unchecked-yleistyypin toiminto |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan unchecked-yleistyypin toiminnon. |
Varoitus |
|
Muotoilemattoman tyypin käyttö |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan muotoilemattoman tyypin käytön (esimerkiksi List-määritys määrityksen List<String> sijasta). |
Ohita |
|
Yleistyypin parametri, joka on esitelty lopullisen tyypin rajalla |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan lopullisen tyypin käsittävän tyypin rajan. |
Varoitus |
|
Puuttuva @Override-huomautus |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan metodin, joka korvaa toisen toteutetun metodin, ja "@Override"-huomautus puuttuu. |
Ohita |
|
Puuttuva @Deprecated-huomautus |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan vanhentuneen tyypin ilman "@Deprecated"-lisähuomautusta. |
Ohita |
|
Huomautusta käytetään super-rajapintana |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan tyypin, joka toteuttaa huomautuksen. Tätä ei pidetä hyvänä käytäntönä, vaikka tämä on mahdollista. |
Varoitus |
|
@SuppressWarnings-huomautuksessa on käsittelemättömiä varoitussanakkeita |
Kun tämä asetus on käytössä, kääntäjä tuottaa virhe- tai varoitusilmoituksen havaitessaan käsittelemättömän varoitussanakkeen "@SuppressWarnings"-huomautuksessa. |
Varoitus |
|
Ota käyttöön @SuppressWarnings-huomautukset |
Kun tämä asetus on käytössä, kääntäjä käsittelee "@SuppressWarnings"-huomautukset. |
Käytössä |
Kun Käsittele virheet vakavina kääntäjän virheinä -asetus on käytössä, kaikki tuotetut virheet (sekä vakavat että määritettävät) tuottavat koodin, jota ei voi toteuttaa. Kun asetus ei ole käytössä, koodi voidaan suorittaa, kunhan se ei sisällä vakavia virheitä (esimerkiksi syntaksivirheitä).
