Arvutiteaduse instituut
  1. Kursused
  2. 2024/25 kevad
  3. Objektorienteeritud programmeerimine (LTAT.03.003)
EN
Logi sisse

Objektorienteeritud programmeerimine 2024/25 kevad

  • Kodutööd ja praktikumid
  • Loengud
  • Kursuse korraldus
  • IDE juhend
  • Süvendusrühm
  • Silumisest

Lisamaterjalid 2

var tüüp

Muutuja peab olema mingit tüüpi, nagu int, boolean või String. Nende asemel saab kasutada deklaratsiooni var, mis annab muutujale sobiva tüübi kompileerimise ajal. See võib muuta koodi loetavamaks, kui andmetest on vaja eraldada kindlat informatsiooni ja vahetulemused pole olulised:

public class VarSõned {
    public static char sõnedestTäht(String[] sõned) {
        var kolmasSõne = sõned[2];
        var kolmasSõneTöödeldud = kolmasSõne.strip().toLowerCase();
        var esimeneTäht = kolmasSõneTöödeldud.charAt(0);
        return esimeneTäht;
    }

    public static void main(String[] args) {
        String[] sõned = new String[]{"Paber", "Papp", "Kivi", "Käärid"};
        System.out.println(sõnedestTäht(sõned));
    }
}

var lihtsustab for-tsükleid:

for (var i = 0; i < 5; i++)  {
	System.out.println(i);
}

String[] sõned = {"Suur", "Väike", "Uus", "Vana"};
for (var element : sõned) {
	System.out.println(element);
}

Seda pole soovituslik kasutada igal võimalusel. Kui on palju vähetähenduslike nimedega muutujaid järjest, siis on raskem tuvastada iga muutuja tüüpi:

var x = 165767.3423;
var y = 9674.0;
var z = 94378;
var w = 3.4350;
var q = 1230;
var s = 556.756;

var-tüüpi muutuja ei saa olla globaalne ega algse väärtuseta. Järgnevad koodijupid annavad veateate:

class EsimeneViganeKlass {
    var x = 1;
    public static void main(String[] args) {
        System.out.println("Seda teksti ei väljastata");
    }
}
public class TeineViganeKlass {
    public static void main(String[] args) {
        var x;
        System.out.println("Seda teksti samuti ei väljastata");
    }
}

Meetodi parameetrid ja tagastus ei saa olla var-tüüpi:

public static var varArgumendiksJaTagastuseks(var varMuutuja) {
        return varMuutuja;
}

Kuna var-tüüpi muutujale antakse õige tüüp kompileerimise ajal, siis ei saa selle tüüpi programmis hiljem muuta. Sõne ei saa muuta täisarvuliseks:

var sõne = "Java";
sõne = 1;

var töötab massiividega mõnel juhul:

var nullideMassiiv = new int[5];

var eiTööta = {1, 2, 3};
var kolmeNumbriMassiiv = new int[]{1, 2, 3};
var kaEiTööta = new var{1, 2, 3};

var arv = 1;
var üheArvuMassiiv = new int[]{arv};

Enesekontroll


Kasulikud klahvikombinatsioonid IntelliJ’s

IntelliJ’s on palju klahvikombinatsioone, mis teevad koodi kirjutamise ja selles navigeerimise kergemaks ning kiiremaks. Neid saab vaadata ja muuta minnes File → Settings → Keymap või CTRL + ALT + S → Keymap.

Üldised klahvikombinatsioonid, mis kehtivad mõnedes teistes tekstiredaktorites ja arenduskeskkondades:

  • CTRL + C – kopeerib või kui midagi pole selekteeritud, siis selekteerib rea ja kopeerib selle;
  • CTRL + X või SHIFT + DELETE – kopeerib ja kustutab;
  • CTRL + V – kleebib;
  • CTRL + D – genereerib koopia;
  • TAB – lisab neli tühikut;
  • SHIFT + TAB – eemaldab neli tühikut;
  • SHIFT + ALT + ↑ – liigutab koodi üles;
  • SHIFT + ALT + ↓ – liigutab koodi alla;
  • CTRL + Z – ennistab muudatuse;
  • CTRL + SHIFT + Z või CTRL + Y – taastab muudatuse;
  • CTRL + W – selekteerib koodi;
  • CTRL + SHIFT + W – ennistab koodi selekteerimise;
  • CTRL + A – selekteerib kogu koodi;
  • SHIFT + ↑ – selekteerib ühe rea üles;
  • SHIFT + ↓ – selekteerib ühe rea alla;
  • SHIFT + → – selekteerib ühe tähe paremal;
  • SHIFT + ← – selekteerib ühe tähe vasakul;
  • CTRL + F – avab otsinguriba, mis leiab failist kõik sisestatule vastavad sõnad;
  • CTRL + R – avab otsinguriba samamoodi nagu CTRL + F ja lisaks riba, kuhu saab sisestada sõnu, millega asendada leitud sõnu;
  • CTRL + G – avab uue akna, kus saab sisestada mitmendale reale ja täheni failis navigeerida.

IntelliJ spetsiifilisemad klahvikombinatsioonid:

  • ALT + INSERT – avab menüü, kus saab genereerida konstruktorit, get- ja set-meetodeid ja muud sellist. Kasulik nädal 3;
  • CTRL + O – avab menüü, mis kuvab meetodeid, mida saab implementeerida. Kasulik nädal 5;
  • CTRL + ALT + L – vormindab koodi vastavalt File → Settings → Editor → Code Style järgi;
  • ALT + ENTER – kuvab erinevaid võimalusi olenevalt, mille peal seda rakendatakse. Näiteks klassil kuvatakse selle käivitamise võimalust. Vea korral soovitatakse potentsiaalseid parandusi;
  • TAB või ENTER – kui koodi kirjutades tuleb poole sõna pealt soovitus, mis see olla võiks, siis seda saab realiseerida. Näiteks kirjutades b on üheks soovituseks boolean. Kirjutades main soovitab main meetodi. Selliseid lühendeid on veel: sout on System.out.println();, fori on for-tsükkel. Kõiki võimalusi näeb klahvikombinatsiooni CTRL + J abil;
  • SHIFT + F10 – käivitab koodi;
  • SHIFT + F9 – käivitab siluri;
  • CTRL + CTRL – avab menüü, kus saab otsida nime järgi salvestatud käivitamise konfiguratsioone ning neid jooksutada;
  • F2 – navigeerib järgmise vea või hoiatuse juurde. Kui programmis vead ja hoiatused, siis viib ainult vigadeni;
  • CTRL + B – kui seda rakendada muutuja, klassi või muu sarnase deklaratsioonil, siis kuvatakse selle kasutused. Kui seda kasutada muutujal, klassil või muul, siis toimub selle deklaratsiooni juurde navigeerimine;
  • CTRL + Q – avab dokumentatsiooni;
  • CTRL + SHIFT + F – avab menüü, kuhu saab kirjutada sõnu, mida otsida failidest;
  • CTRL + SHIFT + R – avab menüü samamoodi nagu CTRL + SHIFT + F ja lisaks riba, kuhu saab sisestada sõnu, millega asendada leitud sõnu.

Enesekontroll

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused