Proměnné a datové typy v Jave: Od primitiv po reference

Pokud se učíte programovat v Javě, je důležité porozumět tomu, jak Java pracuje s proměnnými, datovými typy a pamětí. Základní rozdíl mezi primitivními a referenčními typy vám pomůže vyhnout se běžným chybám, jako je NullPointerException. V tomto článku vše vysvětlíme krok za krokem.

1. Rozdělení proměnných na primitivní a objektové typy

Java nabízí dva základní typy proměnných:

Primitivní typy jsou rychlé a nenáročné. Referenční typy umožňují práci s komplexními strukturami dat.

2. Co je referenční typ a jak funguje ukazatel na objekt

Referenční proměnná uchovává adresu objektu v paměti (na tzv. heapu). Neobsahuje tedy přímo data, ale jen „cestu“ k nim.

String jmeno = "Eva";

Proměnná jmeno neobsahuje text „Eva“, ale referenci na objekt typu String. Pokud ji předáte jiné proměnné, obě odkazují na stejný objekt.

3. Význam hodnoty null a časté chyby

null značí, že proměnná neukazuje na žádný objekt. Pokud na ní zavoláte metodu, vznikne chyba NullPointerException.

String jmeno = null;
System.out.println(jmeno.length()); // NullPointerException

Před použitím proměnné je vhodné kontrolovat:

if (jmeno != null) {
    System.out.println(jmeno.length());
}

Od Javy 8 doporučujeme využívat třídu Optional pro práci s možnými null hodnotami.

4. Přetypování primitivních typů

Java vyžaduje jasné definice typů. Při převodu mezi typy někdy potřebujete přetypování:

int a = 10;
double b = a; // implicitní

double x = 9.7;
int y = (int) x; // y = 9

Při přetypování může dojít ke ztrátě informací – např. uříznutí desetinné části. Důležité je to např. při výpočtech nebo práci s penězi.

5. Inicializace a rozsah proměnných

Proměnné musí být před použitím inicializovány. Existují:

public class Auto {
    String znacka;

    void vypis() {
        int vek = 5;
        System.out.println(vek);
    }
}

Nepoužité lokální proměnné Java nedovolí zkompilovat – je to bezpečnostný mechanizmus.

Chcete se naučit více o proměnných, typech a paměti v Javě?

Vyzkoušejte kurz JAVASE1 – Programování v JAVA SE: Syntax jazyka JAVA, kde se naučíte základy Javy včetně proměnných, typů, metod a práce s pamětí. Kurz je vhodný pro začátečníky i pokročilejší zájemce o programování.

Jak začít programovat?

Úvod do programování pro každého bez předchozích znalostí.

Stáhněte si náš ebook teď výjimečně zdarma!!!

Viac informacií preberáme na kurze:

Kurz JAVASE1 - Základy programování v jazyce Java

Marián Knězek