Minden osztályváltozó, példányváltozó vagy tömb elem az alapértelmezett értékével inicializálódik:
- A byte típus alapértelmezett értéke nulla, azaz (byte)0
- A short típus alapértelmezett értéke nulla, azaz (short)0
- Az int típus alapértelmezett értéke nulla, azaz 0
- A long típus alapértelmezett értéke nulla, azaz 0L
- A float típus alapértelmezett értéke (pozitív) nulla, azaz 0.0f
- A double típus alapértelmezett értéke (pozitív) nulla, azaz 0.0d
- A char típus alapértelmezett értéke a null karakter, azaz '\u0000'
- A boolean típus alapértelmezett értéke hamis, azaz false
- Referencia típusok alapértelmezett értéke null
Minden metódus paraméter a hívó által használt megfelelő argumentum értékével inicializálódik.
Minden konstruktor paraméter a példányosító kifejezés vagy explicit konstruktorhívás megfelelő argumentumának értékével inicializálódik.
Egy kivételkezelő paraméter a dobott kivételt reprezentáló objektummal inicializálódik.
Minden lokális változónak explicit értéket kell adni, mielőtt használják, vagy inicializációval vagy hozzárendeléssel (assignment).