WSNHiD, Programowanie 2 Lab. 1 [ część 1 ] Wprowadzenie do języka Java Wprowadzenie Język programowania Java jest obiektowym językiem programowania. Powstał w 1995 i od tej pory był intensywnie rozwijany. Głównymi zaletami języka jest jego prostota, ogromna biblioteka standardowych komponentów oraz przenaszalność (zgodnie z założeniami WORA = Write Once, Run Anywhere). Każdy program składa się ze zbioru klas. Każda klasa musi znajdować się w oddzielnym pliku nazwanym tak jak nazwa klasy. Przykładowa deklaracja klasy znajdującej się w pliku Sample.java może wyglądać tak: Program rozpoczyna działanie, podobnie jak to miało miejsce w przypadku języka C, od metody main. Metoda ta musi być posiadać modyfikator widoczności public i specyfikator static oraz być typu void. Przykładowa klasa zawierająca metodę main() może wyglądać tak: Kompilator języka Java oraz JVM Programy napisane w języku Java są kompilowane do bytecode u interpretowanego przez maszynę wirtualną (JVM) za pomocą kompilatora javac. Ćwiczenie 1: Proszę utworzyć plik Sample.java zawierający pojedynczą klasę Sample (wraz z metodą main) i skompilować go za pomocą kompilatora javac. Programowanie 2, Wprowadzenie do języka Java, 2007 Bartosz Bogacki 1
Po skompilowaniu klasy powinniśmy uzyskać jej obraz binarny w pliku Sample.class. Aby uruchomić napisany program należy wykonać polecenie: java cp. Sample Zmodyfikujmy teraz klasę tak, aby po uruchomieniu wyświetlony został łańcuch Hello World. System.out.print("Hello "); System.out.println("World!"); Jaka jest różnica między metodą print() a println()? Typy danych Typy liczbowe całkowite: byte (od -128 do 127), short (od -32 768 do 32 767), int (od -2 147 483 648 do 2 147 482 647) long (od -9 223 372 036 854 775 808 do 9 223 372 036 854 775 807) char (od 0 do 65535) wszystkie znaki zapisane za pomocą Unicode (od '\u0000' do '\uffff') Typy zmiennoprzecinkowe: float (pojedynczej precyzji) double (podwójnej precyzji) Typ logiczny - boolean (prawda - "true" lub fałsz - "false"). Wewnątrz metody zmienne są deklarowane oraz wykorzystywane w sposób analogiczny do języka C. Przykład: int a = 5; int b = 35; double c = 3.15; boolean prawda = true; System.out.println(a + b); System.out.println(c); System.out.println(prawda); Programowanie 2, Wprowadzenie do języka Java, 2007 Bartosz Bogacki 2
Jaki jest wynik działania powyższego programu? Do przechowywania zmiennych łańcuchowych wykorzystywane są obiekty klasy String. Przykład: String tekst = "To jest przykładowy napis" String napis = "Hello World!"; System.out.println(napis); Łączenie napisów (operator konkatenacji): Tablice Tablica 16-to elementowa typu int: int tablica[] = new int[16]; tablica[0] = 31337; tablica[1] = 31338; String napis1 = "Hello"; String napis2 = " "; String napis3 = "World"; String napis4 = "!!!"; System.out.println(napis); Tablica 12-to elementowa typu char: char tablica[] = new char[12]; tablica[0] = 'a'; tablica[1] = 'b'; Programowanie 2, Wprowadzenie do języka Java, 2007 Bartosz Bogacki 3
Komentarze Komentarze w języku Java: /* Wykomentowane pomiędzy */ // Wykomentowane do końca linii Podstawowe instrukcje sterujące Podstawowe konstrukcje języka Java bardzo przypominają te z języka C. while (wyrażenie_logiczne) { int i = 0; while (i < 10) { i++; do { while (wyrażenie_logiczne); int i = 0; do { i++; while (i < 10); for (inicjalizacja; warunek_końcowy; krok) { for (int i = 0; i < 10; i++) Programowanie 2, Wprowadzenie do języka Java, 2007 Bartosz Bogacki 4
if (wyrażenie_logiczne) { else { /* inne instrukcje do wykonania */ if (i == 10) { System.out.println ("Zmienna i jest równa 10"); Ćwiczenie 2: Proszę napisać program, który wypisze w jednej kolumnie wszystkie liczby całkowite od 0 do 100 za wyjątkiem liczb 33 oraz 55. --- Koniec części 1 --- Programowanie 2, Wprowadzenie do języka Java, 2007 Bartosz Bogacki 5