Obiekty i pakiety w języku Java
Obiekty w języku Java
1 listopada 2015
Artykuł - tablice
Tablice w języku Java
11 listopada 2015
Artykuł logo

Dzisiaj napiszesz i uruchomisz swój pierwszy program. Przy okazji dowiesz się czym jest biblioteka standardowa i co się w niej znajduje. Poznasz klasę String z biblioteki standardowej. Dowiesz się też o paru nowych funkcjach IDE. Jak zwykle wszystko zakończymy przykładowym zadaniem do wykonania. Do dzieła!

To jest jeden z artykułów w ramach darmowego kursu programowania w Javie. Proszę zapoznaj się z pozostałymi częściami, mogą one być pomocne w zrozumieniu materiału z tego artykułu.

Zaczynamy z grubej rury, bez patyczkowania się:

  • otwórz IDE,
  • utwórz nowy projekt,
  • utwórz nowy pakiet (Alt + Insert),
  • utwórz nową klasę (Alt + Insert).

To już znasz, teraz czas na nowe rzeczy. Wszystkie elementy zostały opisane w poprzednich artykułach z cyklu:

  1. Kurs programowania Java – przygotowanie środowiska
  2. Kurs programowania Java – metody
  3. Kurs programowania Java – obiekty i pakiety

Live templates

W ciele klasy, która została stworzona w poprzednim punkcie naciśnij Ctrl + J. Pokaże się okienko z podpowiedziami. To jest bardzo przydatna funkcja IDE pozwalająca bardzo szybki sposób pisać kod programiście.

Z okienka, które się pokazało wybierz psvm. Bum! Cała metoda już „się napisała” 🙂 Teraz w edytorze wpisz sout i naciśnij Enter. Bum! Znów cała linijka jest gotowa. Napisaliśmy tylko kilka znaków a całe ciało metody zostało stworzone za nas.

Poprzednie dwa akapity to nic innego jak funkcja Live templates IDE (dosłownie przetłumaczyć można to na żywe szablony). W trakcie kursu będziemy poznawali kolejne szablony pomagające w pisaniu kodu.

okienko live templates

Tworzenie zmiennych lokalnych

Następnie wewnątrz () wpisz message, bądź cokolwiek innego co nadaje się na nazwę zmiennej.

Jak widzisz IDE zaznacza tą nazwę na czerwono pokazując nam błąd. Oczywiście zmienna nie została jeszcze utworzona. Po naciśnięciu Alt + Enter pokaże nam okienko z możliwymi sposobami rozwiązania problemu.

Z okienka wybierz „Create local variable…”. IDE utworzy nam zmienną, musimy wybrać jej typ. Z dostępnej listy wybierz String i przypisz do niego jakiekolwiek zdanie otoczone "", jak w przykładzie:

Uruchomienie programu

Może nie uwierzysz, ale przy pomocy tych kilku skrótów klawiaturowych napisałeś swój pierwszy program, który możemy uruchomić! Jak to zrobić? Naciśnij skrót Alt + Shift + F10.

Z okienka, które się pokazało wybierz nazwę klasy i „Run”. To spowoduje uruchomienie programu, który napisałeś.

W dolnej część IDE pokaże się okno wyświetlające nasz program. Proste prawda? Nagrałem też filmik, pokazujący jak doszedłem do gotowej klasy. Możesz go obejrzeć na kanale youtube

Run dialog

Istnieje również skrót Shift + F10, który pozwala na uruchomienie aktualnie edytowanej klasy (jeśli taka możliwość istnieje).

Omówienie kodu programu

Najwyższy czas na analizę kodu, który napisaliśmy.

Linijka z pakietem to dla Ciebie nic nowego, więcej na temat pakietu przeczytasz w artykule . Później definiujemy klasę, również nic nowego. W tym samym artykule przeczytasz więcej o klasach.

Następna linijka to już dwie nowe rzeczy.

Metody statyczne

Ten fragment kodu to nic innego jak definiowanie metody. Więcej o metodach przeczytasz w artykule o metodach w języku Java. Nowe jest jednak słowo kluczowe static. Przy pomocy tego słowa kluczowego definiujemy metody statyczne.

Jak pamiętasz do wywołania metody potrzebujemy instancji klasy:

Metody statyczne różnią się od zwykłych metod tym, że do ich wywołania nie potrzebujemy instancji klasy. Taką metodę możemy wywołać na klasie. Biorąc nasza przykładową klasę Main z metodą main wywołanie wyglądałoby następująco.

Typ tablicowy

Kolejna nowa rzecz to typ przekazywanego argumentu. String[] oznacza tablicę obiektów typu String. O tablicach więcej przeczytasz w jednym z kolejnych artykułów. Klasę String omówimy jednak trochę dokładnej, kilka akapitów poniżej.

Ta konstrukcja jest trochę bardziej skomplikowana. Odwołujemy się tutaj do atrybutu out klasy System. System.out także jest obiektem, jest to obiekt klasy java.io.PrintStream. Klasa ta definiuje wiele metod, jedną z nich jest println, która wypisuje to co przekażemy jej jako parametr w osobnej linii1.

Klasa String

W każdym języku programowania, który znam istnieje sposób na zapisanie łańcucha znaków w sposób zrozumiały dla komputera. W języku Java do tego celu używamy klasy String.

Jak widzisz w linijce tworzymy zmienną someRandomWord typu String i przypisujemy jej wartość "słowo". Wszystko co jest otoczone " oznacza String. Jest to konstrukcja wbudowana w język Java. Do utworzenia instancji obiektu String nie potrzebujemy konstruktora, wystarczy otoczyć łańcuch znaków "" jak w przykładzie wyżej.

Jeśli wewnątrz łańcucha znaków chcesz umieścić " musisz go poprzedzić ukośnikiem \ jak w przykładzie poniżej.

Łańcuchy znaków możemy ze sobą łączyć przy pomocy symbolu +

Kilka metod klasy String

Podobnie jak inne klasy String ma zestaw metod, których możemy użyć. Poniżej kilka z nich:

  • length – zwraca długość łańcucha znaków
  • contains – sprawdza czy w łańcuchu znaków znajduje się ten przekazany jako parametr
  • endsWith – spradza czy łańcuch kończy się przekazanym argumentem

Metod jest sporo. Ponownie z pomocą przychodzi IDE. Wystarczy, że napiszesz . (kropkę) po instancji i od razu dostaniesz podpowiedzi z metodami, które możesz wywołać.

metody klasy String

JavaDoc

Przypadkiem nie próbuj ich zapamiętać! Owszem parę podstawowych wejdzie Ci w krew po pewnym czasie ale zakuwanie ich z kartką w ręku nie ma najmniejszego sensu. Z pomocą przychodzi dokumentacja. Każda klasa z biblioteki standardowej ma dokładną dokumentację opisującą wszystkie metody, ich argumenty i typy zwracane.

Na przykład dokumentację dla klasy String możesz znaleźć pod tym adresem http://docs.oracle.com/javase/8/docs/api/java/lang/String.html

Pewnie pamiętasz jak na początku w artykule opisującym czym jest programowanie przekonywałem, że angielski to podstawa? 🙂

Biblioteka standardowa

String i dużo innych klas są częścią tak zwanej biblioteki standardowej. Jest to nic innego jak zestaw klas dostarczony wraz z językiem dostępny dla programisty. Znajdują się w w niej różne klasy używane na co dzień przez programistów np. java.io.PrintStream, java.lang.String czy java.lang.System, które poznałeś w tym artykule.

Zadanie

Napisz program, który wyświetli trzy różne zdania opisujące aktualną pogodę. W czwartej linii wypisz sumaryczną długość trzech poprzednich zdań.

Podsumowanie

Prawda, że nie było tak strasznie? Jeśli podobał Ci się dzisiejszy artykuł proszę polub stronę na facebooku.

Zależy mi na tym, żeby dotrzeć do jak największej liczby osób, które chcą się nauczyć programować, jeśli mógłbyś przekazać im informację o stronie byłbym ogromnie wdzięczny. Do następnego razu!

[FM_form id=”3″]

  1. To jest spore uproszczenie, tutaj musielibyśmy mówić o strumieniach, plikach, IO itd. dzisiaj to pominiemy, skupimy się na tym w przyszłości
  • Dagmara

    Dobry wieczór 🙂 w punkcie „Uruchomienie programu” brakuje nazwy skrótu klawiaturowego do uruchomienia. Pozdrawiam 🙂

    • Marcin Pietraszek

      Cześć Dagmara 🙂 Dziękuję za uwagę, artykuł już poprawiłem.

  • Ahlen

    Myślę, że ta lekcja powinna być jako lekcja pierwsza w twojej serii. Jest przyjemniejsza, zadanie jest proste i nie zniechęca do działania tak jak np. lekcja pierwsza w której początkujący tak na prawdę nie wie co się tam dzieje bo nawet z tego nie korzysta. Tutaj coś wyskakuje w konsoli, widać efekt pracy.

    • Zgodzę się, z Tobą, że efekty widoczne od razu mogą motywować do dalszej nauki. Z drugiej jednak strony miałem wrażenie, że krótki wstęp teoretyczny może też mieć dobry skutek. Zastanowię się jeszcze – możliwe, że zmienię kolejność na taką jaką sugerujesz.

      • Ahlen

        Mogę mówić tylko za siebie ale myślę, że dużo osób się ze mną zgodzi. Osobiście najefektywniej uczę się kiedy w zadaniach od razu pracuje na konkretnych przykładach. Najlepiej gdyby przykłady dotyczyły czegoś, związanego z życiem codziennym jak np. „Tworzenie listy pracowników w firmie” itp.. Bardzo też fajną metodą jest następujące postępowanie:
        1. Pokazujemy widzom program, który będziemy tworzyć i omawiamy jego działanie.
        2. Omawiamy funkcje które w nim wykorzystaliśmy (wstęp teoretyczny – ogólny zarys).
        3. Zaczynamy tworzyć program krok po kroku (piszemy kod i omawiamy teorię bardziej szczegółowo).
        Oczywiście to tylko moje zdanie. Niemniej jednak uważam, że Twój blog jest naprawdę spoko i każde przedstawienie pewnych informacji w inny sposób niż z poprzedniego źródła zawsze urozmaica naukę i często uzupełnia braki lub uczy czegoś nowego.
        Pozdrawiam 🙂

  • Lukaspar

    Metody statyczne :
    „Więcej o metodach przeczytasz w .”

    Zabrakło chyba linku do lekcji o metodach 🙂

    „int length = productName.length(); // w naszym przypadku zwraca 9”

    W naszym przypadku zwraca 8 🙂 (CocaCola)

    • Hej Lukaspar! Wielkie dzięki za wskazanie błędów, poprawiłem już treść artykułu. Jeśli uda Ci się wyłapać coś w innych artykułach proszę o info 🙂