Sobes.tech
Intern

Mis vahe on primitiivsete ja viidetüüpide vahel?

sobes.tech AI

Vastus AI-lt

Primitiivtüübid salvestavad andmete väärtuse, samas kui viidetüübid salvestavad viite (aadress mälus) objektiile.

Primitiivtüübid:

  • Võtavad fikseeritud suuruse mälu.
  • Edastatakse väärtuse järgi (kopeeritakse ise väärtus).
  • Ei ole objekte ja neil ei ole meetodeid.
  • Kasutatakse lihtsate andmete jaoks (arvud, tähemärgid, loogilised väärtused).
// Java primitiivtüübid
int count = 10; // Salvestab väärtuse 10
boolean isValid = true; // Salvestab väärtuse true

Viidetüübid:

  • Võtavad erineva suuruse mälu sõltuvalt objektist.
  • Edastatakse viitega (kopeeritakse objekti aadress).
  • On objekte ja neil on meetodid.
  • Kasutatakse keerukamate andmete jaoks (objektid, massiivid, stringid).
// Java viidetüübid
String message = "Tere"; // message salvestab viite mälus oleva stringi objekti juurde
Integer number = 20; // Integer on klass, mis pakib primitiivset tüüpi int, viidetüüp

Võrdlus:

Omadus Primitiivtüübid Viidetüübid
Salvestamine Väärtus Viide (aadress)
Edastamine Väärtuse järgi Viite järgi
Mälu suurus Fikseeritud Muutuv
OOP Ei ole objekte On objekte
Näide int, boolean, char String, Object, Array