Czy przyszła Wam do głowy jedna okoliczność związana ze słowem kluczowym "throws" omawianym tutaj? Obsługa wyjątków kryje jeszcze jedną tajemnicę. Jak wspomniałem, "throws" "przerzuca" odpowiedzialność obsłużenia zgłoszonego wyjątku metodzie wywołującej. A co w przypadku gdy "main" posiada taką definicję? Jakie konsekwencje mogą z tego wyniknąć? Czytajcie dalej, a okaże się to ciekawsze od powieści kryminalnej.

Zabieram się za kolejną porcję obfitego redagowania na własnej stronie. Znowu Java bez zmian i opowiem czym jest import statyczny oraz czym się on różni od zwykłego. To również stanowi jedynie element poboczny i może pomóc lub zaszkodzić w zależności od tego, kto czyta nasz kod. Nie migajcie się, poznajcie kolejny element o którym się mało mówi.

Jest jeszcze wczesna godzina, zatem macie moją wypowiedź już po raz czwarty z rzędu TEGO SAMEGO DNIA! Nie wiem jak ja to znoszę i póki co, nie chcę się nad tym zastanawiać. Przechodzimy do kolejnego prostego tematu związanego z Javą, który macie traktować jako całkowicie opcjonalny. Dotyczy on statyczności, jest rzadko stosowany, a to coś kryje się pod nazwą "inicjalizator statyczny". Poznajcie szerzej ten termin razem z przykładem pozostawionym w środku.

Gotowi na dalsze wyjaśnienia związane z tym samym artykułem? Został jeszcze jeden element. Pamiętacie dopisek "throws" w nagłówku funkcji? Jest to nieco rzadziej omawiany element a szkoda, bo równie przydatny co samo przechwytywanie wyjątków. Obsługa wyjątków w języku Java to jedno, a "przerzucenie" tej odpowiedzialności na metodę wywołującą to zupełnie inna bajeczka.

Godzina dwunasta, zatem piszę po raz drugi. Wracając do tamtego artykułu trzeba opisać kolejny obcy termin na który wtedy zwróciłem Waszą uwagę. Serializacja obiektów w Javie wiąże się z dużą odpowiedzialnością. To nie jest temat, który powinien być w rękach kompletnej amatorszczyzny. Po czym rozpoznać doświadczonego od początkującego w tym temacie? Jeden wstawi ważną stałą "serialVersionUID" do klasy, a drugi nie. Wyjaśnienia i szczegóły w środku.

Na pierwszy strzał idzie wyjaśnienie jednej z kilku nieścisłości, które pojawiły się w tym artykule. Pakiety w języku Java są szeroko wykorzystywane tylko nie każdy wie z jakich powodów. Może Wy jesteście zainteresowani dlaczego stosujemy pakiety i jakie są zasady ich stosowania?

UWAGA!!!

Ze względu na stwarzanie problemów przez Joomlę z powodu korzystania z samego słowa "Java" pisanego z małej litery, będę przez całość artykułu posługiwał się tą nazwą pisaną wielką literą. Przepraszam za utrudnienia jednak to prawdopodobnie wynika z kolizji nazw i Joomla musi jakoś korzystać z tego słowa podczas przetwarzania treści artykułu.

Trzeci raz z rzędu piszę do Was z tego samego fotela. Odejdźmy teraz od złożonych rzeczy i skupmy się na czymś prostszym. Jest jeszcze tyle tematów w języku Java, a nie zostały one omówione. Taka pętla "foreach" na przykład. Nazywana jest również pętlą rozszerzoną. Debiut miał miejsce właśnie w Javie i pozwala na wygodniejszy sposób obsługi wszelkich tablic i list, czyli zmiennych przechowujących wiele danych. To będzie ostatni wpis na dzisiaj.

Zaprezentuję teraz drugi wariant zapisu i odczytu danych. Język Java oferuje dodatkowo obiekty zdolne do przetwarzania danych zapisanych w pliku tekstowym. Tutaj procedura jest zdecydowanie bardziej rozbudowana i uprzedzam, że może sprawiać duże trudności w rozumieniu, gdyż kod przeze mnie prezentowany będzie od razu zaopatrzony w funkcje których mogliście nie widzieć jeszcze na własne oczy. Skoro już Państwa uprzedziłem, przechodzimy do rozpoczęcia tematu. Zapis i odczyt z pliku tekstowego.

Nie opuszczamy Javy ani na moment, zmienimy jedynie temat. Na początek mam jedno pytanko. Czy ktoś z Was wie do czego służy serializacja obiektów? Wiecie w ogóle że jest taki termin? Jeśli drapiecie się po głowie, to czytajcie uważnie. Nie mówię, że jest to podstawa w rozumieniu języka, natomiast przechowywanie danych w celu zapisu i odczytu może być ciekawym eksperymentem. To co, przekonałem do zmiany decyzji?

Czy wiecie, że w języku Java można również zrobić przeciążanie konstruktorów? Stosując identyczną sztuczkę z metodami, jesteśmy w stanie to "nanieść" również na konstruktory. Aczkolwiek trzeba wiedzieć jak to robić dobrze, gdyż konstruktory wyróżniają się nie tylko zastosowaniem, ale także innym doborem słów kluczowych. Zapraszam każdego zainteresowanego do dalszego ciągu.

Niniejszy artykuł będzie robił za podsumowanie tego "sznurka" poprzednich wpisów na temat samego dziedziczenia w języku Java. Być może przypomni mi się coś jeszcze istotnego a na razie, wypuszczam ostatnią planowaną część na temat dziedziczenia w której polimorfizm wkracza do akcji. Polimorfizm i dziedziczenie to dwa fundamenty programowania obiektowego stojące obok hermetyzacji. Ona sama dotyczy jedynie określenia dostępu do danych, natomiast jeśli zajdzie taka potrzeba, o niej też wspomnę w osobnym artykule. Zakończmy to, co zaczęliśmy już dawno temu!

Jesteście gotowi na następną część z tematu dziedziczenia? Podnosimy poprzeczkę i zaprezentuję Wam kolejne słowo kluczowe umożliwiające łączenie przesłaniania metody z wywoływaniem jej "wersji pierwotnej". Dziedziczenie w języku Java to jeden z szerszych tematów który co gorsza, jest elementarną podstawą do umiejętnego wykorzystywania paradygmatu obiektowego.

Przystępujemy do następnej części z cyklu "Dziedziczenie w języku Java". Jak wiemy z poprzedniej części, klasa abstrakcyjna pozwala nałożyć zabezpieczenie na tworzenie zbyt ogólnych obiektów. Teraz zapoznam Was z zabezpieczaniem od drugiej strony czyli sprawienie, aby dana klasa była ostatnim "potomkiem" w drzewie. Klasa finalna - oto czego Wam potrzeba!

Oto część druga dotycząca mechanizmu paradygmatu obiektowego jakim jest dziedziczenie w języku Java. Poprzednio wprowadziłem Was w ten temat bardzo powierzchownie, a teraz zapoznacie się z kolejnym elementem, który bądź co bądź może stanowić jedynie "dekorację" aczkolwiek mogącą zabezpieczyć przed tworzeniem instancji zbyt ogólnego obiektu. Dowiecie się co to jest klasa abstrakcyjna, czym się ona różni od "zwykłej" oraz jak ona wpływa na przebieg pisania kodu w Javie.

Czas poruszyć wątek dziedziczenia! Jest to kolejny element stanowiący zakres podstawowego rozumienia języka Java. Dziedziczenie w języku Java to fundament w paradygmacie obiektowym. Na czym on polega? Jak on działa w programie? Jak go dostrzec w kodzie? Spokojnie, jedno pytanie po drugim zostanie tu omówione.

Dzień zaczyna dobiegać końca, a ja na zachętę przynoszę Wam następne akapity kręcące się wokół języka Java. Opiszemy sobie czym jest statyczność. Wiele osób ma problemy z przyswojeniem sobie tematu, który również jest często spotykany i wykorzystywany w praktyce. To brzmi na tyle poważnie, że postanowiłem zabrać się i za zmienne, i za metody statyczne. Nie uciekajcie od tego z krzykiem! To trzeba wreszcie zrozumieć!

Witam Was ponownie! Zbliża się nieuchronnie koniec "mojego miesiąca" i stopniowe zbieranie plonów swojej ciężkiej pracy z pisania na stronie, aczkolwiek nie ma to wpływu na dalsze redagowanie artykułów. Jak dojdę do wyznaczonego progu, wtedy wszystko wyjaśnię. Na razie, zabieramy się znowu za język Java i za wątek przesłaniania, który omówiłem wczoraj jeśli ominęliście. Zaprezentuję wyjaśnienie i od razu przesłanianie metody o nazwie "toString". Co to konkretnie jest?

Lecimy z następnym tematem Javy. Weźmiemy pod lupę dwa terminy, które wbrew pozorom nie są synonimiczne: przeciążanie a przesłanianie. Bardzo podobne do siebie, a oznaczają dwie zupełnie różne rzeczy. Macie przed sobą rozmowę kwalifikacyjną na stanowisko programisty w tym języku? Bądźcie pewni, że to pytanie może paść!

Moim zdaniem starczy już tych wykładów o samym tworzeniu gier. Język C też już wyczerpałem aż nadto, zatem wrócę do Javy i opiszę bardziej podstawowe rzeczy. Na przykład czym jest konstruktor w Java. Co to jest. Co on robi. Jak go zdefiniować. Na tym się dzisiaj skupimy.

Mam kolejny istotny punkt tematu tworzenia gier od podstaw. Iluzja współczesnych produkcji z roku na rok potrafi coraz bardziej mącić w głowie sprawiając, że wyobrażamy sobie same cuda wianki jakie byśmy chcieli osadzić w naszej grze. Czuję się w obowiązku przykuć szczególną uwagę na jeden taki "moment" wyobraźni, który może przyczynić się do poniesienia całkowitej porażki, a projekt sam w sobie zostanie wyrzucony do kosza. Tworzenie gier to nie jest takie "hop-siup"! Wyobraźnię trzeba krótko trzymać jak na smyczy.