kilka uwag dla początkujących programistów java (w tym mnie)
Jest to mój pierwszy wpis więc proszę o wyrozumiałość.
Krótko o tematyce mojego Joggera: chciałbym tutaj notować najciekawsze rzeczy z jakimi będę miał do czynienia, związanymi z szeroko rozumianą informatyką. Często zamiast twórczych wpisów będzie to po prostu agregacja linków. Na pewno będą się pojawiać tutaj wpisy dotyczące: sieci (głównie na temat cisco), programowanie, linux i mac os.
Ok, tyle o mnie i tematyce. Przejdźmy teraz do meritum. Jako, że na studiach chwilowo poznaliśmy język java dość pobieżnie. Postanowiłem zabrać się za doszlifowanie tego języka.
Kilka moich sugestii, czy rzeczy które mnie zaciekawiły podczas czytania pierwszych rozdziałów Thinking in Java.
Opakowywanie typów
Jak wiadomo w języku Java wszystko jest obiektem, no prawie - w końcu mamy typy proste, które obiektami nie są, natomiast posiadają swoje obiektowe odpowiedniki. Natomiast ciekawszą własnością jest możliwość bezpośredniego konwertowania (jakby opakowywania typów) - np.
char c1 = 'x';
Character ch= new Character(c1); //tutaj oczywiście wykorzystujemy konstruktor, magii nie ma
char c2= ch; //ale tutaj juz dzialamy w druga strone
Zasięg zmiennych
W przeciwieństwie do języka C/C++ Java nie udostępnia nam możliwości przesłonięcia zmiennych. Moim zdaniem wpływa to zdecydowanie na polepszenie czytelności kodu.
int x=0;
{
int x=1; //w c/c++ ok, w java niekoniecznie
}
Pętla "foreach"
W Java SE5 wprowadzono nową odmianę pętli for mającą funkcjonalność tradycyjnego foreach spotykanego w innych językach (a więc przeglądanie elementów tablic itp.). Składnia "foreach" jest bardzo prosta i można ją wydedukować z poniższego przykładu
int [] x={0, 1, 2};
for (int i : x){
System.out.println(i);
}
W następnej części opiszę jak java realizuje funkcję goto (bardzo krytykowaną, natomiast implementacja jest w java jest troszkę inna i bardzo ograniczona w stosunku do tej co powszechnie się krytykuje) opiszę też inicjalizację pól (w tym statycznych) i ...
