Yleiset sudenkuopat ja virheenkorjausviestit
Tunnistakaa if/else-koodin yleiset virheet, lukekaa kääntäjän ja ajonaikaiset virheilmoitukset sekä käyttäkää tulostukseen perustuvaa virheenkorjausta tehokkaasti.
Yleiset sudenkuopat ja virheenkorjausviestit on ilmainen Java Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Java Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Java Academy-kurssilla on yhteensä 3 oppituntia.
Miksi virheitä korjataan
Miksi virheenkorjausta tarvitaan? Virheitä esiintyy. Opettele lukemaan viestejä, paikantamaan syy ja varmistamaan korjaus. Yksinkertaiset println-tarkistukset ovat usein arvailua tehokkaampia.
Kääntäjän virheet
Yleiset kääntäjän virheet
- cannot find symbol: väärä nimi tai puuttuva import
- incompatible types: väärän tyypin sijoittaminen
- missing ;: puolipisteeseen tai aaltosulkeeseen liittyvä ongelma
- unclosed string literal: lainausmerkit eivät täsmää
int x = 5
System.out.println("Hi")Logiikkavirheet
Logiikkavirheet
- Väärä operaattori (
>eikä>=) - Puuttuvat aaltosulkeet: vain ensimmäistä lausetta ohjataan
- Yksi liikaa tai liian vähän: rajat kuten
<=ja<
if (x > 5)
System.out.println("Big");
System.out.println("Also big?");
Käytä aaltosulkeita useiden rivien ryhmittelemiseen.
Merkkijonojen yhtäsuuruus
Merkkijonot: vertaa sisältöä equals-metodilla, älä ==-operaattorilla. == tarkistaa viitteet.
String a = "Ada";
String b = new String("Ada");
System.out.println(a == b);
// false (usually)
System.out.println(a.equals(b));
// truePinojäljet
Ajon aikaiset virheet näyttävät pinojäljen. Lue ylimmät rivit kohdasta oma koodisi. Esimerkiksi NullPointerException tietyn tiedoston ja rivin kohdalla.
Tulosta muuttujia oletusten tarkistamiseksi tai suojaa koodi tarkistuksilla.
Virheenkorjauksen esittely
Kokeilkaa: Havainnoikaa puuttuvien ja mukana olevien aaltosulkeiden ero sekä verratkaa merkkijonojen käsittelyssä ==-operaattoria ja equals()-metodia.
public class Main {
public static void main(String[] args) {
int x = 4;
// Missing braces example
if (x > 5)
System.out.println("x > 5 (without braces)");
System.out.println("This line looks conditional but always runs");
// Fixed with braces
if (x > 5) {
System.out.println("x > 5 (fixed)");
System.out.println("Now both lines are conditional");
} else {
System.out.println("x <= 5 branch");
}
String s1 = "Ada";
String s2 = new String("Ada");
System.out.println("s1 == s2: " + (s1 == s2));
System.out.println("s1.equals(s2): " + s1.equals(s2));
}
}
Virheenkorjauksen vaiheet
Järjestäkää vaiheet: Asettakaa virheenkorjauksen perusvaiheet järkevään järjestykseen.
Kertaus ja seuraava aihe
Kertaus: Näitte tyypillisiä käännös- ja ajonaikaisia ilmoituksia, logiikan sudenkuoppia sekä sen, miten aaltosulkeet ja merkkijonojen vertailu vaikuttavat toimintaan.
Seuraavaksi: Opitte operaattorien etusijajärjestyksen ja vankkojen ehtojen muodostamisen.
Opi Java tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 104
- Oppitunnit
- 374
Usein kysytyt kysymykset
Onko oppitunti ”Yleiset sudenkuopat ja virheenkorjausviestit” ilmainen?
Kyllä – oppitunnin ”Yleiset sudenkuopat ja virheenkorjausviestit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Java Academy-kurssin, päivitä CoddyKit PROhon. Java Academy-kurssilla on yhteensä 3 oppituntia.
Mitä opin oppitunnilla ”Yleiset sudenkuopat ja virheenkorjausviestit”?
Tunnistakaa if/else-koodin yleiset virheet, lukekaa kääntäjän ja ajonaikaiset virheilmoitukset sekä käyttäkää tulostukseen perustuvaa virheenkorjausta tehokkaasti. Harjoittelet Java Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Java Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Java Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/3.
Kuinka kauan ”Yleiset sudenkuopat ja virheenkorjausviestit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Java Academy-oppitunnilla?
Kyllä. Jokainen Java Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- If-lauseet – perusteet
- If-lauseet – harjoittelu ja sisäkkäiset ehdot
- Yleiset sudenkuopat ja virheenkorjausviestit