Java #9: dziedziczenie oraz modyfikator protected

java inheritance

Jedną z zasad właściwego programowania jest niepowtarzanie raz zaimplementowanego kodu. Czasami jest to trudne, ponieważ, aby użyć tych samych pól i metod w innych klasach musielibyśmy: używać programowania strukturalnego (czyli słowa kluczowego static), co łamie zasady programowania obiektowego, więc odrzucam tą opcję, użycie kompozycji (np. pola, które będzie typem referencyjnym do obiektu, z którego chcemy … Dowiedz się więcej

Java #8: String, StringBuilder, StringBuffer

java string stringbuilder stringbuffer

Pierwszą rzecz, którą musisz wiedzieć o łańcuchach znaków to to, że nie istnieje typ prosty je obsługujący. String w Javie jest klasą, której implementacja jest oparta na typie znakowym (char) i tablicach. Obie te kwestie omawiałem już wcześnie, także powinieneś rozumieć, że String to nic innego jak zlepek zmiennych typu char. Teoretycznie moglibyśmy stworzyć sami … Dowiedz się więcej

Java #7: tablica oraz pętla for

java for loop array

Tablica Tablica jest kolejną, obok obiektów, strukturą referencyjną. Jej podstawowe cechy to przechowywanie z góry określonej liczby wartości, przy czym wartością mogą zarówno zmienne referencyjne jak i proste (int, float, itp.). Jest to jedyna struktura zdefiniowana wbudowaną w język (inne tego typu konstrukcje zostały napisane za pomocą klas). Korzystałem już z nie pisząc znaną już … Dowiedz się więcej

Java #6: Hermetyzacja (enkapsulacja)

java encapsulation

Pierwsze prawo programowania obiektowego brzmi: hermetyzacja (encapsulation). Znasz już pewne podstawy Javy. Wiesz jak pracować na obiektach i jak programować w sposób strukturalny. Czas abyś zrozumiał/a dlaczego programowanie obiektowe jest tak popularne we współczesnym programowaniu. Główne cechy programowania obiektowego to: – hermetyzacja (lub inaczej enkapsulacja) – dziedziczenie – polimorfizm – abstrakcja (czasami pomijane) Hermetyzacja to … Dowiedz się więcej

Java #5: Metody statyczne i metoda main

java static methods

Metody statyczne Na pewno spotkałeś/aś się z określeniem, że w Javie wszystko jest klasą. W rzeczywistości faktem jest, że każdy napisany przez nas kod MUSI zawierać się w jakiejś klasie. To wymuszenie sprawia, że Java faktycznie jest językiem w pełni obiektowym. Jednak jest sposób, aby pisać kod bez stosowania obiektów. Z pomocą przychodzą tu metody … Dowiedz się więcej

Java #4: klasy i obiekty. Czym są?

java class object

Klasy i obiekty Klasa to taki kontener w programie, zawierający odpowiednie struktury i implementacje algorytmów (sposoby ich działania) z nimi związanych, które łączą się w logiczną całość. Skomplikowane? Tak tylko Ci się wydaje. Klasą może być wszystko, co w rzeczywistym świecie, odzwierciedla potrzeby biznesowe. Jeśli byśmy chcieli zaprogramować giełdę samochodów, prawdopodobnie potrzebowalibyśmy takich klas jak: … Dowiedz się więcej

Java #3: Autoboxing, unboxing i literały

java autoboxing

Literały a autoboxing Pisząc swój pierwszy kod na pewno zastanawiałeś/aś się dlaczego klasy takie jak String, Integer, czy Double inicjalizuje się poprzez znak ‘=’. Przecież mówiłem w poprzedniej lekcji, że obiekty tworzy się poprzez słowo kluczowe ‘new’. Tak jest w rzeczy samej. Także obiekty wyżej wymienionych klas można stworzyć w ten sam sposób. Dlaczego więc … Dowiedz się więcej

Java #2: Typy referencyjne

java reference types

Typy referencyjne vs typy proste Jak wspomniałem we wcześniejszym wpisie w programowaniu wyróżniamy typy proste i typy referencyjne. Jak mogłeś/aś przeczytać wcześniej nie jest prawdą, że wszystko w Javie jest referencją. W praktyce jednak częściej będziemy operować na referencjach niż na konkretnych wartościach w pamięci komputera. Czym jest referencja i do czego służy? Otóż dawno, … Dowiedz się więcej