Artykuł

gru 07 2008
0

Zmienne, stałe i obiekty w Javie

Zmienne są bardzo ważnym i użytecznym elementem każdego języka programowania w tym również Javy. Pozwalają na przechowywanie określonej informacji. Ze zmiennymi możemy robić naprawdę wiele. Możemy tworzyć nowe zmienne, modyfikować istniejące, kasować ich zawartość, jednym słowem ze zmienną możemy zrobić dosłownie wszystko. Ponieważ Java jest językiem obiektowym, dlatego również jej zmienne są obiektowe (choć właśnie w tej materii występują wyjątki).

Co każdy programista o zmiennych wiedzieć powinien

Ponieważ Java jest językiem silnie typowanym i kompilowanym wymusza na użytkowniku deklarację zmiennej. Nie może dojść do sytuacji jaka ma np. miejsce w PHP, że jakaś zmienna bierze się nagle ni z gruszki ni z pietruszki. Podczas deklaracji należy określić typ danych przechowywanych w tej zmiennej. I tutaj właśnie następuje pewne wyłamanie z obiektowości Javy, ponieważ część ze zmiennych jest typu prymitywnego. Dotyczy to głównie zmiennych liczbowych i zmiennej typu boolean. Podyktowane jest to wydajnością. Przykładowo gdy chcemy wykonać obliczenia matematyczne, znacznie szybciej wykonuje się je na typach prymitywnych niż na typach obiektowych. Ale tych z was, których zawiodła informacja o typach prymitywnych, mogę pocieszyć, że w Javie znajdują się również odpowiedniki obiektowe, dla każdej zmiennej prymitywnej. Jednak ze względu na ograniczoną wydajność tych zmiennych i odgórne zalecenia o ich nie stosowaniu, pominę je również w tym artykule.

Na zmiennych prymitywnych możemy, wykonywać wszelkie operacje matematyczne (dotyczy to zmiennych o charakterze numerycznym). W przypadku zmiennych obiektowych, możemy wykonywać wszelkie metody zdefiniowane dla określonej klasy.

Klasyfikacja zmiennych

Zmienne prymitywne

- byte - małe liczby całkowite (8bit)
- short - średnie liczby całkowite (16bit)
- int - liczby całkowite (32bit)
- long - duże liczby całkowite (64bit)
- char - znaki Unicode (16bit)
- boolean - wartości logiczne - true i false
- float - liczby zmiennoprzecinkowe (32bit)
- double - liczby zmiennoprzecinkowe (64bit)

Zmienne obiektowe

- String - zmienna operuje na napisach
- Inne - pozostałe zmienne obiektowe np. obiekt Date

Zmienne tablicowe

- Zmienne, które przechowują kilka elementów

Inicjalizacja zmiennych i obiektów

Dobrym nawykiem jest nadawanie nowym obiektom/zmiennym domyślnej wartości. Dlatego tak też będzie w przykładach.

Zmienne prymitywne

int liczba = 0;
float suma = 0.0;
boolean zapisOk = true;

Interpretacja powyższego kodu:
- linia pierwsza: int - czyli typ, liczba - nazwa zmiennej, 0 - przypisana wartość początkowa
- linia druga: float - typ, suma - nazwa zmiennej, 0.0 - przypisana wartość początkowa (typ zmiennoprzecinkowy)
- linia trzecia: boolean - typ, zapisOk - nazwa zmiennej, true - wartość początkowa zmiennej logicznej.

Zmienne obiektowe

Date teraz = null;
teraz = new Date(); 
String kraj = new String("Polska");
String tekst = "jakiś tam tekst";

Interpretacja powyższego kodu: - linia pierwsza i druga: deklarujemy obiekt typu Date o nazwie teraz (linia 1), następnie tworzymy nowy obiekt (linia 2).
- linia trzecia: zmienna obiektowa typu String, kraj - nazwa zmiennej , new String("Polska") - utworzenie nowego obiektu typu String
- linia czwarta: zmienna obiektowa typu String, tekst - nazwa zmiennej, inne podejście do tworzeniu obiektu tekstu.

Zmienne tablicowe

int[] oceny = new int[6]
String[] pilkarze = new String[5]
String[] politycy = {"Lepper", "Giertych", "Rokita"}

Interpretacja powyższego kodu:
- linia pierwsza: utworzenie tablicy typu integer o 6 rekordach i nazwie oceny
- linia druga: utworzenie tablicy typu String o 5 rekordach i nazwie pilkarze
- linia trzecia: utworzenie tablicy typu String, wypełnienie jej danymi i nadanie nazwy politycy

Stałe

Pisząc o zmiennych i obiektach warto wspomnieć także o stałych. Stałe reprezentują dane, które się nie zmieniają. Tzn. wartość jest taka sama od momentu zainicjowania tej stałej aż do końca trwania programu. Stała jest zmienną poprzedzoną słowem kluczowym final.

final int liczba_planet = 9;
final String kraj = "Polska";

Interpretacja powyższego kodu:
linia pierwsza: typ integer, nazwa - liczba_planet, przypisanie wartości 9
linia druga: typ String, nazwa - kraj, przypisanie wartości Polska.

Podsumowanie

W artykule zapoznaliśmy się z podstawowymi typami zmiennych, które zasadniczo wystarczą do pisania aplikacji. Wraz ze wzrostem doświadczenia zaczniemy tworzyć własne klasy, korzystając ze zmiennych przedstawionych w niniejszym artykule.

Data ostatniej modyfikacji: 05.06.2011, 17:19.

Podoba Ci się ten wpis? Powiedz o tym innym!

Send to Kindle

Komentarze

blog comments powered by Disqus