BLACK WEEKS DO -60%     |        7-24 listopada     |        + dodatkowe -10% dla zamówień od 150 zł

close
Cart icon
User menu icon
User icon
Skontaktuj się z nami:
+48 888-916-333
Lightbulb icon
Jak to działa?
FAQ icon
FAQ
Contact icon
Kontakt
Terms of service icon
Regulamin zakupów
Privacy policy icon
Polityka prywatności
Java: Podstawowe i obiektowe typy danych.

Java - typy proste oraz obiektowe

Zastanawiasz się nad tym, czym różni się String od string? Zdarzyło ci się napotkać na błąd kompilacji spowodowany użyciem niewłaściwego typu? Jeśli tak, to przeczytaj ten artykuł, który raz na zawsze rozwieje twoje wątpliwości.

Java posiada dwa rodzaje typów danych: proste oraz obiektowe. Już na pierwszy rzut oka można je rozróżnić w banalny sposób. Nazwa typu prostego zaczyna się od małej litery:


int digit = 1;


Nazwa typu obiektowego rozpoczyna się od dużej litery:


String name = "Admin";


W praktyce, są bardzo duże różnice w funkcjonowaniu, pomiędzy tymi dwoma typami. Za chwilę o tych różnicach trochę opowiemy.

Programista Java w akcji.

Zdobądź umiejętności niezbędne do pracy jako Java Developer.

Dowiedz się więcej

Typy proste - czym się charakteryzują

Typy proste są wbudowane w język Java. Oznacza to, że można z nich korzystać od razu. Wystarczy zadeklarować zmienną i określić jakiego typu dane będzie ona przechowywać. Takie typy czasem nazywamy czasem typami prymitywnymi albo podstawowymi.

Oto kilka przykładów:


int score = 23;
boolean finished = true;
double price = 23.99;


Jeśli znasz podstawy Java, to pewnie kojarzysz powyższe typy danych. Co można o nich powiedzieć?

  • Typy proste zawsze mają jakąś wartość - nie mogą przyjmować null.
  • Nazwa typu zaczyna się od małej litery.
  • Takie typy nie posiadają metod bo nie są obiektami.
  • Takie typy nie posiadają pól (właściwości).

W Java mamy taki standardowy zestaw typów prostych: char, boolean, byte, short, int, long, float oraz double. Generalnie korzystamy z nich wtedy, gdy potrzebujemy przechować prostą, pojedynczą wartość. Typowym przykładem użycia może być licznik pętli. Albo jakaś prosta opcja w programie przyjmująca wartości prawda/fałsz.

Co ważne, typy proste mogą oferować większą wydajność, w porównaniu do typów obiektowych. Związane jest to z mechanizmem przechowywania wartości typu prostego. Jest on dużo prostszy niż w przypadku typów obiektowych.

Typy obiektowe - czym się charakteryzują

Typy obiektowe używane są jak typowe obiekty. Od razu przejdźmy do przykładu:


String name = "Admin";


Mamy tu zmienną o nazwie name, typu String. Zwróć uwagę na to, że nazwa typu rozpoczyna się od dużej litery.

Czasami typy obiektowe nazywamy typami referencyjnymi. Dlaczego? Bo mamy tutaj do czynienia z referencją do wartości. Nasza zmienna name, to referencja do wartości typu String. Taka referencja wskazuje na lokację zawierają informacje o wartości. Inaczej działa to w przypadku typów prostych - wartości są przechowywane bezpośrednio w zmiennej.

Co można powiedzieć o typach obiektowych?

  • Nazwa typu zaczyna się od dużej litery (np. String zamiast string).
  • Takie typy są obiektami - mamy więc do dyspozycji różne metody oraz właściwości (pola).
  • Możemy do takich typów przypisywać wartości null.

Najlepiej będzie te powyższe cechy zilustrować przykładami. Przykład pierwszy:


String name = null;


Można używać wartości null. W przypadku typu prostego taka operacja nie jest możliwa. Co ciekawe, null jest domyślną wartością dla typów obiektowych.

Przykład drugi:


String name = "Admin";
System.out.println(name.length());


Mamy dostęp do różnych właściwości oraz metod. Tutaj użyliśmy metody length() z klasy String, która zwróci nam długość łańcucha znaków (5 bo tyle znaków mamy).

Oczywiście w przypadku typów prostych, nie mamy dostępu do takich metod.

Własne typy obiektowe

Kluczową cechą typów obiektowych jest to, że możemy tworzyć własne typy. Nie jesteśmy ograniczeni do podstawowego zestawu. Za każdym razem gdy tworzysz własne klasy, to tak naprawdę tworzysz nowy typ. Wszystko się zgadza:

  • Nazwa klasy zawsze zaczyna się od dużej litery.
  • Możemy w klasie tworzyć metody oraz dodawać pola.

Java Developer

Java to sprawdzony, niezawodny i bardzo rozpowszechniony język programowania.Ta ścieżka kariery sprawi, że staniesz się pełnoprawnym kandydatem na Java Developera. Ścieżka zawiera dziesiątki zadań, ćwiczeń oraz projektów, które nauczą cię realnych, przydatnych na rynku pracy umiejętności. Dowiedz się więcej

Kiedy używamy typów prostych

Tak jak wspominaliśmy wcześniej, typów prostych używamy gdy potrzebujemy pojedynczej wartości, bez dodatkowych metod oraz właściwości. Wszelkiego rodzaju liczniki pętli, proste zmienne przechowujące jedną wartość itp. Plusem jest tutaj prostota oraz wydajność, wynikające z tego, że wartość jest przechowywana bezpośrednio w zmiennej.

Kiedy używamy typów obiektowych

Typów obiektowych używamy wtedy, gdy mamy złożone dane. Dobrym przykładem są klasy, które mają odzwierciedlać złożone struktury. Zdecydowana większość programów napisanych w Java oparta jest właśnie na klasach. Takie klasy mają różne metody oraz właściwości.