theme | background | highlighter | fonts | ||
---|---|---|---|---|---|
default |
prism |
|
Java 1 • lekce 10
Filip Jirsák
19. 3. 2024
online
- starší
java.io.File
- vytváření
new File()
File
→Path
:file.toPath()
- vytváření
- nové
java.nio.file.Path
- vytváření
Path.of
Path
→File
:path.toFile()
- vytváření
- zjištění existence, přejmenování, vytvoření adresáře: metody přímo na třídě
File
- kopírování: ručně přomocí čtení a zápis dat
- třída
java.nio.file.Files
- Serializace: uložení dat z paměti (stromu objektů) do souboru na disk
- Deserializace: načtení dat do paměti ze souboru na disku
- Přímo součástí Javy
- Čitelné jen z Javy
- Bezpečnostní problémy
- → nebudeme se tím zabývat
- JSON = JavaScript Object Notation (JavaScript ≠ Java)
- Univerzální formát napříč programovacími jazyky, hlavně web
- Různé knihovny pro Javu
Zajišťuje mapování mezi objekty v Javě a formátem JSON.
Type data = objectMapper.readValue(file, Type.class);
objectMapper.writeValue(file, data);
Při čtení je nutné specifikovat, jaký typ dat (třídu) očekáváme.
- Pokud dojde k chybě (např. neexistuje soubor, který chceme číst), dojde k tzv. „vyhození výjimky“ (throw exception).
- Výjimka probublává zpět aplikací, dokud nenarazí na místo, kde je zachycena a zpracována.
- Pokud není zachycena nikde, aplikace se ukončí.
try {
// kód, kde může dojít k výjimce
} catch (Exception e) {
// zpracování výjimky
}
throw new Exception();
// Nebo libovolný jiný typ výjimky.
Všechny výjimky: java.lang.Throwable
- Kontrolované (checked):
java.lang.Exception
- Metoda musí deklarovat pomocí
throws
, které kontrolované výjimky může vyhazovat - Volající musí výjimku zpracovat nebo deklarovat, že ji vyhazuje dál
- Metoda musí deklarovat pomocí
- Nekontrolované (unchecked):
java.lang.RuntimeException
- Mohou být vyhozeny kdykoli
- Chyby (error):
java.lang.Error
- Např. nedostatek paměti, poškozený program apod.
- V aplikaci se obvykle nezachycují, protože se s nimi nedá mnoho udělat