Strona główna

Język Java wprowadzenie


Pobieranie 37.29 Kb.
Data19.06.2016
Rozmiar37.29 Kb.

Język Java - wprowadzenie

Literatura


Domka, Łokińska- Podręcznik str. 191-263

Barteczko K: Java od podstaw do technologii cz. 1 i 2

Horstmann C, Corne G. : Java 2 Podstawy

Lis M.: Praktyczny kurs Java

Lis M.: Java Ćwiczenia praktyczne

Schilt H.: Java Praktyczny kurs programisty

Schilt H.: Java Przewodnik dla początkujących

J. Eckel-Thinking in Java wersja polska

http://java.sun.com/docs/white/langenv

Wprowadzenie


Java to obiektowy język programowania stworzony przez grupę roboczą pod kierunkiem Jamesa Goslinga z firmy Sun Microsystems.



  • Java jest językiem tworzenia programów źródłowych kompilowanych do kodu bajtowego, czyli postaci wykonywanej przez maszynę wirtualną.

  • Jego podstawowe koncepcje zostały przejęte z języka Smalltalk (maszyna wirtualna, zarządzanie pamięcią) oraz z języka C++ (duża część składni i słów kluczowych).

  • Uwaga. Javy nie należy mylić ze skryptowym językiem JavaScript, z którym wspólną ma jedynie składnię podstawowych instrukcji.

  • Obecnym właścicielem tej technologii jest Oracle Corporation.

Wersje Javy


Nazwa

Akronim

Objaśnienie

Java Developer Kit

JDK

Oprogramowanie dla programistów, którzy chcą pisać progamy w javie

Java Runtime Enviroment

JRE

Oprogramowanie dla klientów, którzy chcą uruchamiać progamy napisane w javie

Standard Edition

SE

Platforma Javy do użytku na komputerach biurkowych i w przypadku prostych zastosowań serwerowych

Enterprise Edition

EE

Platforma Javy przeznaczona do skomplikowanych zastosowań serwerowych

Micro Edition

ME

Platforma Javy znajdująca zastosowanie w telefonach komórkowych i innych małych urządzeniach

Java 2

J2

Przestarzały termin określający wersje Javy od 1998 do 2006

Software Developer Kit

SDK

Przestarzały termin, który oznaczał pakiet JDK od 1998-2006r

Java TV

TV

Platforma Javy znajdująca zastosowanie w telewizorach

Update

u

Termin określający wydanie z poprawionym błędem

NetBeans




Zintegrowane środowisko programistyczne firmy Sun

Istniało kilka kolejnych wersji Java SDK 1.4, 1.5, 1.6. Najnowszą wersję (np. Java EE 7) można ściągnąć z adresu internetowego http://java.sun.com/javase.

Instalacja Java JDK


Przebieg instalacji opisany jest w podręczniku.

Podstawowe katalogi:

  • bin – kompilator wraz z narzędziami

  • demo – przykładowe programy

  • include – pliki do metod rodzimych

  • libpliki bibliotek

  • jre – pliki środowiska wykonawczego

  • src – pliki źródłowe

Powstanie języka Java jest jednym z rezultatów szeroko zakrojonych prac projektowych związanych z obsługą nowoczesnych urządzeń pracujących w czasie rzeczywistym. Urządzenia te potrzebowały języka, który generuje niewielki kod wynikowy i jest niezależny od sprzętu. Pierwotnie, w systemach obsługujących te urządzenia używano języka C++, jednak ze względu na niedoskonałości kompilatorów C++ i różnice występujące między poszczególnymi jego realizacjami, powstał pomysł stworzenia nowego języka, całkowicie niezależnego od sprzętu czyli np.: procesorów, układów wejścia-wyjścia i systemu operacyjnego. Program napisany w Javie może być zatem wykonywany zarówno na komputerze PC (pod kontrolą np.: systemu OS/2, Windows 95 lub Windows NT), na Macintosh'u, a także na maszynie UNIX'owej pod warunkiem, że jest tam również zainstalowany specjalny program interpretujący Javę.

Java zawiera elementy językowe ułatwiające pisanie programów przeznaczonych do pracy w sieci Internet. Do dyspozycji mamy zatem obsługę protokołów TCP/IP, co umożliwia łatwe korzystanie z zasobów znajdujących się na odległym komputerze. Java generuje bardzo mały "objętościowo" kod wynikowy, co wiąże się z wymaganiem minimalizacji czasu przesyłania programu poprzez Internet, szczególnie na liniach przesyłowych o małej przepustowości. Java jest językiem zapewniającym bezpieczeństwo użytkownikowi ładującemu program z Internetu, poprzez wprowadzenie kontroli autentyczności kodu.

W języku Java zrealizowano paradygmat programowania zorientowanego obiektowo, z wbudowanymi mechanizmami współbieżności, obsługi sytuacji wyjątkowych i kontrolą przydziału pamięci. Tekstowo program w Javie wygląda podobnie, jak napisany języku C++. Każdy, kto posługuje się językiem C++ regularnie, nie będzie miał większych problemów z "przesiadką" na Javę. Jednak Java różni się od C++, mianowicie:


  • narzucono ograniczenia, które ułatwiają testowanie programów i czynią kod przejrzystym,

  • usunięto wskaźniki i uproszczono model zarządzania zasobami, np. pamięcią operacyjną,

  • usunięto niektóre konstrukcje języka C++ (np.: typedef, #define, goto, struct, union) oraz preprocesor, jako elementy niezgodne z paradygmatem programowania zorientowanego obiektowo oraz utrudniające zrozumienie i modyfikowanie kodu; można je zastąpić poprzez definicje klas,

  • usunięto możliwość przeciążania operatorów,

  • usunięto wielodziedziczenie (zastępując je mechanizmem implementacji interfejsów),

  • uwolniono programistę od konieczności alokacji i zwalniania pamięci,

  • "zlikwidowano" możliwość definiowania procedur i funkcji nie związanych z definicją żadnej klasy.

Programiści mają do dyspozycji setki języków programowania, od języków w pełni interpretowanych jak UNIX Shell, TCL, Perl i innych do języków niskiego poziomu jak C i C++.

W poniższej tabeli porównano właściwości Javy z właściwościami innymi języków programowania. Poniższe zestawienie przygotowano na podstawie materiałów zawartych w dokumencie HTML "The Java(tm) Language Environment: A White Paper" firmy Sun



Porównanie atrybutów Javy z własnościami innych językami programowania

Jak wynika z powyższego zestawienia, Java jest językiem programowania o dużych możliwościach, i dlatego idealnie nadaje się do pisania programów przeznaczonych dla sieci Internet, gdzie stała się najpopularniejszym i najczęściej wykorzystywanym językiem programowania.

Beta-kod i maszyna wirtualna


Java zdecydowanie różni się od innych języków trzeciej generacji tym, że jest językiem interpretowanym a nie kompilowanym. Powstały w wyniku kompilacji kod wynikowy nie jest programem jaki można niezależnie uruchomić lecz stanowi tzw. Beta-kod, który jest interpretowany przez Maszynę Wirtualną (JavaVM) pracującą w określonym środowisku. Ze względu na kod nie istotne jest na jakim sprzęcie będzie uruchamiana aplikacja. Ważna jest tylko Maszyna Wirtualna. Jest to ciekawy pomysł umożliwiający odcięcie się od wszystkich poziomów sprzętowo-programowych będących poniżej Maszyny Wirtualnej.


Opis procesu tworzenia aplikacji

Proces tworzenia aplikacji w Javie można przedstawić następująco:



1. Napisanie za pomocą dowolnego edytora tekstu kodu źródłowego programu zawierającego klasę publiczną o nazwie takiej samej (dokładnie takiej samej z uwzględnieniem wielkości znaków) jak docelowa nazwa programu np. MyProgram.

2. Nagranie kodu źródłowego jako pliku o danej nazwie z rozszerzeniem .java, np. MyProgram.java

3. Kompilacja kodu źródłowego zawartego w pliku z rozszerzeniem .java do pliku docelowego o rozszerzeniu .class zawierającego Beta-kod np.:

c:\javac MyProgram.java

javac - nazwa kompilatora programów Javy stworzonego przez firmę Sun (kompilator napisany w Javie)

MyProgram.java - kod źródłowy programu do kompilacji (UWAGA: podana nazwa pliku musi zawierać rozszerzenie .java).

W wyniku kompilacji powstanie plik lub zestaw plików z tym samym trzonem nazwy o rozszerzeniu .class, np. MyProgram.class.



4. Uruchomienie w środowisku interpretatora Beta-kodu, np.

c:\java MyProgram

java - nazwa interpretatora Javy stworzonego przez firmę Sun,

MyProgram - nazwa pliku z Beta-kodem programu w Javie po kompilacji (UWAGA: podana nazwa pliku nie może zawierać rozszerzenia .class).



Tworzenie klas

Klasę w Javie konstruuje się zaczynając od stworzenia ramy klasy:



class NazwaKlasy {

// pola

typ_zmiennej zmienna;

typ_zmiennej zmienna;

//konstruktor - metoda o tej samej nazwie co klasa - wywoływana automatycznie przy tworzeniu obiektu danej klasy

NazwaKlasy(typ_argumentu nazwa_argumentu){

treść_konstruktora;

}

//metody

typ_wartości_zwracanej nazwa_metody(typ_argumentu nazwa_argumentu){

treść_metody;

}

}// koniec class NazwaKlasy

Aplikacje

Aplikacja w języku Java to zdefiniowana klasa publiczna wraz z jedną ściśle określoną metodą statyczną main o postaci:



public static void main(String[ ] args)

{

//treść_metody;

}// koniec public static void main

  • Tablica “args” będąca argumentem metody main() jest zbiorem argumentów wywołania aplikacji w ciele której znajduje się metoda.

  • Kolejność argumentów jest następująca: argument 1 wywołania umieszczany jest w args[0], argument 2 wywołania umieszczany jest w args[1], itd. Występująca nazwa “args” oznacza dynamicznie tworzony obiekt, który zawiera args.length elementów typu łańcuch znaków.

  • Pole “length” oznacz więc liczbę elementów tablicy. Łatwo jest więc określić argumenty oraz ich liczbę korzystając z obiektu “args”.

Warto zwrócić uwagę na to, że oznaczenie “length” jest własnością tablicy (ukrytym polem każdej tablicy) a nie metodą obiektu args. Istnieje metoda klasy String o nazwie “length()” (metody zawsze są zakończone nawiasami pustymi lub przechowującymi argumenty), łatwo więc się pomylić. Dla zapamiętania różnicy posłużmy się prostym przykładem wywołania:

args.length - oznacza ilość elementów tablicy “args”;

args[0].length() -oznacza rozmiar zmiennej tekstowej o indeksie 0 w tablicy "args".

Metoda main jest statyczna, bowiem dotyczy nie pojedynczego obiektu, a całej klasy.

Stąd najprostsza aplikacja w języku Java może wyglądać następująco:
public class HelloWorldApp {

public static void main(String[ ] args) {

System.out.println("Hello World!"); //



}

}


Platformy programistyczne w Javie


  • Eclipse

  • BlueJ

  • JBuilder Borland

  • NetBeans SUN


©snauka.pl 2016
wyślij wiadomość