java1.pdf
(
69 KB
)
Pobierz
Wykład na temat języka programowania JAVA
Java – wprowadzenie
Język JAVA powstał na potrzeby obsługi nowoczesnych urządzeń pracujących w czasie
rzeczywistym. Język ten jest całkowicie niezależny od platformy programowo-
sprzętowej. To oznacza, że program napisany na komputerze PC z systemem Windows 98
będzie działał na komputerze zaopatrzonym w system LINUX czy OS/2 (pod warunkiem,
ze posiada zainstalowany specjalny program interpretujący JAVĘ. Kompilator javy
sprowadza program napisany przez użytkownika (plik z rozszerzeniem „.java”) do beta-
kodu (plik z rozszerzeniem „.class”). Beta kod jest następnie wykonywany przez maszynę
wirtualną javy.
Do pisania w JAVIE i innych językach jest potrzebne to co zwykle, czyli kompilator.
Kompilatorów do tego języka jest wiele, ale najpopularniejszy jest JDK firmy Sun
Microsystems. JDK to ściślej mówiąc pakiet zawierający środowisko uruchomieniowe,
dalej zwane Wirtualną maszyną JAVY, i kompilator tego języka. Kompilator JDK jest
zupełnie darmowy i można znaleźć go na płytach niektórych czasopism komputerowych,
albo ściągnąć go z www.sun.com. Warunkiem uruchomienia programu napisanego w JAVIE
jest Maszyna Wirtualna, np. darmowe JRE - Java Runtime Environment.
Gdy program w javie został napisany w pliku Program.java jego kompilacja i uruchomienie
będą przebiegać w następujący sposób:
javac Program.java //kompilacja stworzony zostanie plik Program.class
java Program // wykonanie programu
Takie podejście zapewnia dużą elastyczność programów napisanych za pomocą języka
„java”. Chociaż był to język pisany głównie z myślą o Internecie, przesyłaniu za jego
pomocą informacji i wzbogacania witryn internetowych (posiada rozbudowany system
pakietów dostosowanych do pracy w sieci), to jest używany coraz częściej poza nim.
Przykładem mogą tu być gry na telefony komórkowe – pisane w javie. Dodatkową zaletą
jest mała wielkość beta kodu.
Język java umożliwia tworzenie programów w formie aplikacji i apletów.
Aplikacja jest programem uruchamianym w odrębnym oknie, posiadającym dostęp do
systemu plików na komputerze. Może być wykonany na komputerze posiadającym
interpreter beta kodu (maszyna wirtualna). Natomiast aplet jest to mały program
wykonujący pewne funkcje, przeznaczony do zamieszczania go na stronach
internetowych. Najczęściej służy do urozmaicenia witryn internetowych. Aplety są
rozpoznawane i interpretowane przez przeglądarki. Na zajęciach będzie państwo pisali
zarówno aplikacje, jak i aplety.
Zaczynając tworzenie programów w języku Java powinno się pamiętać o kilku
podstawowych zasadach, których znajomość jest niezbędna. Należą do nich:
●
JAVA jest językiem stricte obiektowym, co oznacza, że wszystko jest obiektem.
Nie ma w nim funkcji globalnych, każda funkcja musi być zdefiniowana wewnątrz
klasy.
●
W jednym pliku może być zdefiniowana tylko jedna klasa publiczna.
1
Java – wprowadzenie
●
Nazwa pliku powinna zawierać dokładną nazwę klasy publicznej, lub klasy
zawierającej publiczną statyczną funkcję main (zwracając uwagę na wielkie i małe
litery). Np. klasa punkt będzie zdefiniowana w pliku: punkt.java
●
Deklarując zmienne, a następnie używając ich należy pamiętać o poprawnej
pisowni (duże, małe litery). Nazwa zmiennej musi się zaczynać literą alfabetu, lub
znakiem „_” lub „$”. Potem można używać także cyfr. Dobrze jest, gdy:
●
nazwę klasy zaczyna się zawsze dużą literą i każdy następny wyraz także
(TekstPolski)
●
nazwy funkcji i zmiennych publicznych zaczynać zawsze małą literą. Następne
wyrazy z dużej. (nrPorzadkowy)
●
nazwy funkcji i zmiennych prywatnych pisać wyłącznie małymi literami
(nr_poczatku)
●
nazwy stałych tylko dużymi literami (PI)
Strona internetowa javy: www.java.sun.com. Z niej można pobrać sobie środowisko
programistyczne.
Ogólna struktura programów napisanych w javie przedstawia się następująco:
package .....
//definicja pakietu
import .....
// definicja importu (importuje się klasy) często wymagana-(dostęp do klas
osiąga się przez nazwę kwalifikowaną np. java.awt.Frame f = new
java.awt.Frame(”Tytuł”); dzięki tej instrukcji można używać nazw uproszczonych (samo
Frame.)
public class A {
…..
}
class B {
….
}
….
Przy pisaniu programu należy pamiętać, że uruchomienie aplikacji polega na uruchomieniu
funkcji „main”, która musi być zdefiniowana. Schemat definicji funkcji main jest
następujący:
....
class <nazwa_klasy> {
public static void main(String args[])
{
.........
}
}
2
Java – wprowadzenie
Klasa main musi być zawsze zdefiniowana jako publiczna, statyczna funkcja, a jej
argumentem jest tablica zawierająca listę parametrów z którymi wywołana została
funkcja.
Definicja każdej klasy zbudowana jest w następujący sposób:
[ModyfikatorKlasy]
class
NazwaKlasy
[
extends
NadKlasa] [
implements
Interfejsy]
{
/* definicje metod i pól */
}
ModyfikatorKlasy może być kombinacją następujących wyrażeń:
abstract -
Definiuje klasę abstrakcyjną zawierającą tylko metody abstrakcyjne
(niezaimplementowane). Nie jest możliwe utworzenie żadnych
obiektów tej klasy; jest ona użyteczna jedynie podczas budowania
hierarchii klas (przy dziedziczeniu). Klasa abstrakcyjna stanowi wzór
do tworzenia klas pochodnych jest więc szablonem do tworzenia
innych klas.
final -
Od klasy tego typu niemożliwe jest utworzenie klas pochodnych.
Klasy takie stosuje się w celu zapewnienia odpowiedniego poziomu
bezpieczeństwa aplikacjom (klasa potomna może "podszyć się" pod
klasę bazową) oraz niekiedy do oznaczenia klas, nad którymi prace
zostały ukończone - wiernie odwzorowujących obiekty
rzeczywistości.
public -
Taka klasa jest udostępniana na zewnątrz pakietu (package),
w którym się znajduje. W jednym pliku może wystąpić tylko jedna
klasa tak zadeklarowana. W przypadku użycia jej poza pakietem,
w którym się znajduje, należy użyć odwołania: "<NazwaKlasy>.java".
private -
Klasa
private
dostępna jest wyłącznie wewnątrz danego pakietu
(względnie pliku). Jeśli w definicji klasy nie zostanie wpisany żaden
modyfikator zostaje ona automatycznie uznana za klasę
private
synchronizable -
Java, dzięki mechanizmowi wątków (threads), umożliwia tworzenie
programów obsługujących prawdziwą wielozadaniowosć. Używanie
w tego typu programach wspólnych obszarów danych względnie
odwołań do tych samych funkcji łatwo może prowadzić
do zakleszczenia programu (deadlock) bądź do powstania błędów
wartości. Aby tego uniknąć Java umożliwia synchronizację potoków
(wątków). Czasem może okazać się przydatne przekazanie obiektów
jako parametrów funkcji. Staje się możliwe tylko i wyłącznie wtedy,
gdy klasa przekazywanego obiektu zostanie zdefiniowana jako
synchronizable
.
3
Java – wprowadzenie
Oto zestawienie programów stosowanych w trakcie tworzenia aplikacji w JDK.
Program
Zastosowanie
java
Interpreter Javy, pozwalający uruchamiać samodzielnie programy
javac
Kompilator Javy.
javadoc
Generator dokumentów Javy.
javah
generator plików C, tworzący pliki nagłówkowe oraz pliki źródłowe zawierające
tekst potrzebny do definiowania klas.
javap
Disasembler Javy.
jdb
Debuger Javy.
W języku programowania JAVA jest wiele bibliotek, zaskakujących użytkownika swoim
zasobem. Oto kilka podstawowych pakietów.
java.lang
pakiet zawierający podstawowe klasy Java (automatycznie
importowany do każdego programu);
java.applet
pakiet pozwalający na tworzenie apletów (ang. applet);
java.awt
(AWT - Abstract Window Toolkit) zintegrowany pakiet klas
przeznaczony do wspomagania tworzenia interfejsu graficznego użytkownika
java.awt.peer
pakiet zawierający wyspecjalizowane dla konkretnej
platformy komponenty AWT
java.awt.image
pakiet przeznaczony do zarządzania i obróbki obrazu
java.io
pakiet zawierający klasy pozwalające na zarządzanie
wejściowym i wyjściowym strumieniem danych (np. pisanie do pliku)
java.net
pakiet wspomagający tworzenie programów sieciowych
(adresy URL, gniazdka TCP i UDP, adresy IP, ... )
java.util
pakiet świadczący inne usługi (np. generacja liczb losowych,
operacje na ciągach znaków, ...)
Ćwiczenie 1:
Program wypisujący tekst.
import java.io.*;
class Napis {
public static void main(String[] args) {
System.out.println(“Witam ! “);
}}//program wypisujący tekst w trybie tekstowym!
4
Java – wprowadzenie
Ćwiczenie 2:
Program wypisujący przykładowy tekst w Javie (tryb graficzny)
import java.awt.Panel;
//importowanie klas z pakietu awt
import java.awt.Label;
import java.awt.Frame;
public class Witajcie extends Panel
//definicja klasy Witajcie rozszerzającej
//klasę Panel
{
Label powitanie;
//deklaracja referencji powitanie klasy Label
public void init()
//definicja metody publicznej init()
{
setSize (300,100); // wywołanie funkcji określającej rozmiar obiektu;
powitanie=new Label("Witamy Wszystkich");//utworzenie obiektu powitanie klasy Label i
//zainicjowanie go tekstem
add(powitanie);
//dodanie podobiektu powitanie do panelu
}
public static void main(String args[])
//definicja publicznej funkcji statycznej main
{
Witajcie w1=new Witajcie(); //utworzenie obiektu w1 klasy Witajcie
w1.init(); //wywołanie metody init dla obiektu w1
Frame ramka=new Frame("CZESC");
//utworzenie obiektu ramka klasy Frame i
//zainicjowanie go tekstem
ramka.setSize(400,100);
//wywołanie metody setSize dla obiektu ramka
ramka.add("Center",w1);
//wywołanie metody add dla obiektu ramka dodającej obiekt
// w1 wycentrowany
ramka.show();
//wywołanie metody show dla obiektu ramka
}
} //koniec definicji klasy Witajcie
W programie można dopisać poniższy fragment funkcji init umożliwiający zmianę kroju
i koloru tekstu:
Font kroj=new Font("Arial",Font.BOLD,24);
//utworzenie obiektu kroj klasy Font
powitanie.setFont(kroj);
//ustawienie kroju, koloru tła i koloru tekstu
powitanie.setBackground(Color.blue);
// dla obiektu powitanie
powitanie.setForeground(Color.yellow);
Uwaga: Aby kompilator miał dostęp do klasy Font oraz niejawnie do klas Color i String
można zaimportować wszystkie klasy pakietu AWT zamieniając trzy pierwsze wiersze
programu importujące klasy na jeden wiersz:
import java.awt.*;
5
Plik z chomika:
ell_lornzo
Inne pliki z tego folderu:
java14.pdf
(182 KB)
java13.pdf
(40 KB)
java12.pdf
(89 KB)
java11.pdf
(47 KB)
java10.pdf
(51 KB)
Inne foldery tego chomika:
c#
c++
Free Pascal
Zgłoś jeśli
naruszono regulamin