Wprowadzenie do Java
โก Inteligentne podsumowanie
Wprowadzenie do Java wyjaลnia uniwersalny, klasowy, obiektowy jฤzyk programowania, ktรณry moลผe sลuลผyฤ rรณwnieลผ jako platforma obliczeniowa. Ten samouczek obejmuje JavaHistoria, wersje, funkcje, gลรณwne komponenty (JDK, JVM, JRE), edycje platformy i mechanizm kodu bajtowego, ktรณry sprawia, ลผe Java prawdziwy jฤzyk, ktรณry moลผna napisaฤ raz i uลผywaฤ wszฤdzie.

Czym jest Java?
Java to uniwersalny, klasowy, obiektowy jฤzyk programowania, zaprojektowany z myลlฤ o minimalnych zaleลผnoลciach implementacyjnych. Jest to rรณwnieลผ platforma obliczeniowa do tworzenia aplikacji. Java jest szybki, bezpieczny i niezawodny, dlatego napฤdza oprogramowanie na laptopach, w centrach danych, konsolach do gier, superkomputerach naukowych, telefonach komรณrkowych i urzฤ dzeniach wbudowanych. Jako jฤzyk wieloplatformowy, zorientowany na sieฤ, Java pozostaje jednym z najpowszechniej stosowanych jฤzykรณw programowania w branลผy i jest preferowany przez wiฤkszoลฤ organizacji przy realizacji projektรณw o znaczeniu krytycznym.
Co to jest Java Platforma?
Java Platforma jest zbiorem programรณw, ktรณre pomagajฤ programistom tworzyฤ i uruchamiaฤ Java wydajnie uruchamia aplikacje. Zawiera silnik wykonawczy, kompilator i zestaw bibliotek wraz ze specyfikacjami definiujฤ cymi sposรณb ich wspรณลdziaลania. James Gosling opracowaล Java platforma w Sun Microsystems i Oracle Corporation nabyลa jฤ w 2009 roku w wyniku przejฤcia Sun.
Ten film przedstawia Java Platforma i wyjaลnia dlaczego Java jest zarรณwno platformฤ , jak i jฤzykiem programowania:
Kliknij w tym miejscu jeลli wideo nie jest dostฤpne.
Czym jest Java Uลผywany do?
Oto kilka najwaลผniejszych zastosowaล w ลwiecie rzeczywistym Java:
- Developing Android aplikacje.
- Tworzenie oprogramowania korporacyjnego dla duลผych organizacji.
- Zasilanie szerokiej gamy urzฤ dzeล mobilnych Java aplikacji.
- Uruchamianie naukowych aplikacji obliczeniowych.
- Kierowanie procesem analizy duลผych zbiorรณw danych.
- Programowanie urzฤ dzeล sprzฤtowych wbudowanych.
- Technologie po stronie serwera, takie jak Apache, JBoss, GlassFish i Tomcat.
Historia Java Jฤzyk programowania
Oto najwaลผniejsze punkty orientacyjne z historii Java jฤzyk:
- Java jฤzyk poczฤ tkowo nazywaล siฤ OAK.
- Pierwotnie opracowano go do obsลugi urzฤ dzeล przenoลnych i dekoderรณw telewizji kablowej, lecz OAK okazaล siฤ komercyjnฤ poraลผkฤ .
- W 1995 roku Sun zmieniล nazwฤ jฤzyka na โJavaโi przeorientowaล jฤ , aby wykorzystaฤ potencjaล szybko rozwijajฤ cej siฤ sieci WWW.
- W 2009, Oracle Korporacja nabyลa firmฤ Sun Microsystems i staลa siฤ wลaลcicielem trzech kluczowych zasobรณw oprogramowania firmy Sun: Java, MySQL, Solaris.
Java wersje
Oto krรณtka historia Java wersje i daty ich wydania, aktualizowane na podstawie najnowszej wersji objฤtej dลugoterminowym wsparciem technicznym:
| Java Wersja | Data wydania |
|---|---|
| JDK Alfa i Beta | 1995 |
| JDK 1.0 | 23 stycznia 1996 r |
| JDK 1.1 | 19th Feb 1997 |
| J2SE 1.2 | 8th grudnia 1998 |
| J2SE 1.3 | 8th maja 2000 |
| J2SE 1.4 | 6th Feb 2002 |
| J2SE 5.0 | 30th Sep 2004 |
| Java SE 6 | 11th grudnia 2006 |
| Java SE 7 | 28th July 2011 |
| Java SE 8 (LTS) | 18th Mar 2014 |
| Java SE 9 | 21st Sep 2017 |
| Java SE 10 | 20th Mar 2018 |
| Java SE 11 (LTS) | 25th Sep 2018 |
| Java SE 12 | 19th Mar 2019 |
| Java SE 13 | 17th Sep 2019 |
| Java SE 14 | 17th Mar 2020 |
| Java SE 15 | 15th Sep 2020 |
| Java SE 16 | 16th Mar 2021 |
| Java SE 17 (LTS) | 14th Sep 2021 |
| Java SE 18 | 22 marca 2022 r |
| Java SE 19 | 20th Sep 2022 |
| Java SE 20 | 21st Mar 2023 |
| Java SE 21 (LTS) | 19th Sep 2023 |
| Java SE 22 | 19th Mar 2024 |
| Java SE 23 | 17th Sep 2024 |
| Java SE 24 | 18th Mar 2025 |
| Java SE 25 (LTS) | 16th Sep 2025 |
Java Udogodnienia
Oto kilka najwaลผniejszych Java cechy, ktรณre sprawiajฤ , ลผe jest on istotny od prawie trzech dekad:
- Jest to jeden z najลatwiejszych do nauczenia siฤ jฤzykรณw programowania obiektowego.
- โNapisz raz, uruchamiaj wszฤdzieโ โ kod skompilowany na jednej maszynie dziaลa na niemal kaลผdej platformie komputerowej.
- Java jest niezaleลผny od platformy dziฤki swojemu modelowi wykonywania bajtkodu.
- Zostaล zaprojektowany od podstaw z myลlฤ o aplikacjach obiektowych.
- Jest to jฤzyk wielowฤ tkowy z automatycznym zarzฤ dzaniem pamiฤciฤ (zbieranie ลmieci).
- Zostaล stworzony z myลlฤ o rozproszonym ลrodowisku Internetu.
- Umoลผliwia rozproszone przetwarzanie danych ze wzglฤdu na swojฤ sieciocentrycznฤ konstrukcjฤ.
Skลadniki Java Jฤzyk programowania
A Java programista pisze kod w jฤzyku zrozumiaลym dla czลowieka, zwanym Kod ลบrรณdลowyProcesor nigdy nie rozumie kodu ลบrรณdลowego bezpoลrednio โ procesory uruchamiajฤ jedynie kod maszynowy, a ten kod maszynowy rรณลผni siฤ w zaleลผnoลci od rodziny procesorรณw. Aby zaลataฤ tฤ lukฤ, Java Platforma tลumaczy kod ลบrรณdลowy na przenoลnฤ formฤ poลredniฤ . Wszystko to dzieje siฤ w trzech gลรณwnych komponentach: JDK, JVM i JRE.
Java Zestaw deweloperski (JDK)
JDK to ลrodowisko programistyczne sลuลผฤ ce do tworzenia apletรณw i Java aplikacje. Peลna forma JDK to Java Zestaw deweloperski. Java programiลci mogฤ z niego korzystaฤ Windows, macOS, Solarisi Linux. JDK pomaga im kodowaฤ i uruchamiaฤ Java programy. Moลผliwe jest zainstalowanie wiฤcej niลผ jednej wersji JDK na tym samym komputerze.
Dlaczego warto uลผywaฤ JDK?
- JDK zawiera narzฤdzia niezbฤdne do pisania Java programy i ลrodowisko JRE do ich uruchamiania.
- Zawiera kompilator (
javac), Java program uruchamiajฤ cy aplikacje, AppletViewer i podobne narzฤdzia. - Kompilator konwertuje kod napisany w Java do kodu bajtowego.
- Java program uruchamiajฤ cy aplikacje otwiera ลrodowisko JRE, ลaduje niezbฤdnฤ klasฤ i wykonuje jej gลรณwnฤ metodฤ.
Java Maszyna wirtualna (JVM)
Java Maszyna wirtualna (JVM) jest silnikiem zapewniajฤ cym ลrodowisko wykonawcze do sterowania Java kod lub aplikacje. Konwertuje Java bajtkodu do jฤzyka maszynowego. JVM jest czฤลciฤ Java ลrodowisko wykonawcze (JRE). W innych jฤzykach programowania kompilator generuje kod maszynowy dla konkretnego systemu. Jednakลผe Java kompilator generuje kod dla maszyny wirtualnej znanej jako Java Maszyna wirtualna.
Dlaczego JVM?
- JVM zapewnia sposรณb wykonywania niezaleลผny od platformy Java kod ลบrรณdลowy.
- Zawiera liczne biblioteki, narzฤdzia i struktury dostฤpne od razu.
- Po skompilowaniu Java program moลผna uruchomiฤ na dowolnej platformie, co pozwala zaoszczฤdziฤ znacznฤ iloลฤ czasu.
- Maszyna wirtualna Java (JVM) jest dostarczana z kompilatorem JIT (Just-In-Time), ktรณry konwertuje bajtkod na jฤzyk maszynowy niskiego poziomu w czasie wykonywania, dziฤki czemu czฤsto dziaลa on szybciej niลผ aplikacja interpretowana.
Java ลrodowisko wykonawcze (JRE)
JRE to oprogramowanie przeznaczone do uruchamiania innego oprogramowania. Zawiera biblioteki klas, klasฤ loadera i maszynฤ wirtualnฤ Java (JVM). Mรณwiฤ c proลciej, jeลli chcesz uruchomiฤ tylkoโฆ Java program (a nie jego rozwijanie), potrzebujesz ลrodowiska JRE, a nie peลnego ลrodowiska JDK.
Dlaczego warto uลผywaฤ JRE?
- JRE zawiera biblioteki klas, maszynฤ wirtualnฤ Java (JVM) i inne pliki pomocnicze. Nie zawiera narzฤdzi programistycznych, takich jak debuger czy kompilator.
- Wykorzystuje waลผne klasy pakietรณw, w tym:
math,swing,util,lang,awti bibliotek ลrodowiska wykonawczego. - Jeลli musisz biec Java apletรณw i aplikacji, w systemie musi byฤ zainstalowane ลrodowisko JRE.
Rรณลผne typy Java Buty na platformie
Istniejฤ cztery rรณลผne Java platformy jฤzykรณw programowania, z ktรณrych kaลผda jest dostosowana do innego celu wdroลผenia:
1. Java Platforma, wersja standardowa (Java SE): Java Interfejs API SE oferuje Java podstawowa funkcjonalnoลฤ jฤzyka programowania. Definiuje wszystko, od typรณw bazowych i obiektรณw po klasy wysokiego poziomu uลผywane do obsลugi sieci, bezpieczeลstwa, dostฤpu do baz danych, tworzenia graficznego interfejsu uลผytkownika (GUI) i analizy XML.
2. Java Platforma, edycja Enterprise (Jakarta EE, dawniej Java EE): Platforma Jakarta EE oferuje API i ลrodowisko wykonawcze dla programistรณwping i obsลugi wysoce skalowalnych, rozlegลych, wielowarstwowych, niezawodnych i bezpiecznych aplikacji sieciowych. Oracle przeniesiono platformฤ do Eclipse Foundation w 2017 r., przemianowanฤ na Jakarta EE.
3. Java Platforma, wersja Micro (Java JA): Java Platforma ME oferuje interfejs API i maszynฤ wirtualnฤ o niewielkich rozmiarach do uruchamiania Java aplikacje na maลych urzฤ dzeniach, takich jak telefony komรณrkowe i kontrolery wbudowane.
4. Javaefekty: JavaFX to platforma do rozwojuping rozbudowane aplikacje internetowe wykorzystujฤ ce lekki interfejs API. Wykorzystuje on akcelerowane sprzฤtowo silniki graficzne i multimedialne, ktรณre pomagajฤ Java Skorzystaj z bardziej wydajnych klientรณw, nowoczesnego wyglฤ du i zaawansowanych interfejsรณw API umoลผliwiajฤ cych ลฤ czenie siฤ z sieciowymi ลบrรณdลami danych.
Aby zrozumieฤ Java Jeลli chodzi o jฤzyk programowania, musimy przypomnieฤ sobie podstawowe koncepcje dotyczฤ ce sposobu uruchamiania poleceล i wykonywania akcji przez program komputerowy.
Co to jest komputer osobisty?
Komputer to urzฤ dzenie elektroniczne zdolne do wykonywania obliczeล. Skลada siฤ z monitora, klawiatury, myszy i pamiฤci do przechowywania informacji. Najwaลผniejszym elementem jest jednak PROCESOR. Procesor wykonuje wszystkie procesy myลlowe komputera โ ale jak wลaลciwie to robi? Jak rozumie tekst, obrazy i filmy?

Czym jest Assembly Jฤzyk?
Komputer jest urzฤ dzeniem elektronicznym, wiฤc rozumie tylko sygnaลy elektroniczne โ sygnaลy binarne. Sygnaล elektroniczny o napiฤciu 5 V moลผe reprezentowaฤ liczbฤ binarnฤ 1, a 0 V โ liczbฤ binarnฤ 0. Twรณj komputer jest stale bombardowany tymi sygnaลami.
Osiem bitรณw tych sygnaลรณw jest grupowanych razem w celu interpretacji tekstu, liczb i symboli.
Na przykลad symbol # jest identyfikowany przez komputer jako 10101010. Podobnie wzorzec dla funkcji โdodajโ jest reprezentowany przez 10000011.
To siฤ nazywa przetwarzanie 8-bitowe. Nowoczesne procesory potrafiฤ dekodowaฤ instrukcje 64-bitowe jednoczeลnie. Co wiฤc ta koncepcja ma wspรณlnego zโฆ Java? Przeanalizujmy przykลad.
Zaลรณลผmy, ลผe chcesz poleciฤ komputerowi dodanie dwรณch liczb (1 + 2) reprezentowanych przez liczby binarne (10000011). Jak przekazaฤ to komputerowi? Uลผywasz jฤzyka asemblera, aby uruchomiฤ swรณj kod.
"Assembly Jฤzyk jest najbardziej elementarnฤ formฤ jฤzykรณw tworzenia oprogramowania.โ
Wydajesz polecenia w nastฤpujฤ cym formacie. Kod dodajฤ cy dwie liczby w jฤzyku asemblera wyglฤ daลby nastฤpujฤ co:
- Zapisz numer 1 w lokalizacji pamiฤci A.
- Zapisz numer 2 w lokalizacji pamiฤci B.
- Dodaj zawartoลฤ lokalizacji A i B.
- Zapisz wynik.
W latach 50., gdy komputery byลy ogromne i energochลonne, kod jฤzyka asemblera moลผna byลo konwertowaฤ na odpowiadajฤ cy mu kod maszynowy (jedynki i zera) za pomocฤ funkcji mapping Arkusze. Kod byล nastฤpnie wybijany na kartach maszynowych i wprowadzany do komputera. Komputer odczytywaล te kody i wykonywaล program. Byล to dลugi proces โ aลผ do pojawienia siฤ ASSEMBLERA, ktรณry zautomatyzowaล konwersjฤ.
Co to jest asembler i kompilator?
Wraz z postฤpem technologicznym wynaleziono urzฤ dzenia wejลcia/wyjลcia. Program moลผna byลo wpisaฤ bezpoลrednio do komputera za pomocฤ ASSEMBLER-a, ktรณry konwertowaล go na odpowiadajฤ cy mu kod maszynowy (110001โฆ) i przesyลaล do procesora. Wracajฤ c do naszego przykลadu 1 + 2, asembler konwertuje kod asemblera na kod maszynowy jako wynik.
Oprรณcz jฤzyka asemblera naleลผy rรณwnieลผ wywoลaฤ funkcje udostฤpniane przez system operacyjny, aby wyลwietliฤ dane wyjลciowe.
Sam asembler nie wystarczy; potrzebny jest rรณwnieลผ KOMPILATOR, ktรณry skompresuje dลugi kod ลบrรณdลowy do mniejszych, zoptymalizowanych fragmentรณw. W przypadku jฤzykรณw programowania wyลผszego poziomu caลy powyลผszy fragment kodu asemblera sprowadza siฤ do jednej linijki, takiej jak: printf(โ%dโ, 1+2)Kompilator konwertuje Twรณj Jฤzyk C. kod na kod asemblera; asembler nastฤpnie konwertuje go na kod maszynowy transmitprocesor. Najpopularniejszym procesorem uลผywanym w komputerach PC jest procesor Intel.
Nowoczesne kompilatory czฤsto doลฤ czajฤ do pakietu assembler, co pozwala im konwertowaฤ kod jฤzyka wyลผszego poziomu bezpoลrednio na kod maszynowy.
Zaลรณลผmy teraz Windows dziaลa na procesorze Intel โ poลฤ czenie systemu operacyjnego i procesora nazywa siฤ PLATFORMฤ. Najpopularniejszฤ platformฤ jest Windows na platformie Intel, znanej rรณwnieลผ jako platforma Wintel. Inne popularne platformy to AMD, Linux, PowerPC i macOS.
Wraz ze zmianฤ procesora zmieniajฤ siฤ rรณwnieลผ instrukcje montaลผu. Na przykลad:
- Instrukcja โaddโ w systemie Intel moลผe byฤ nazywana ADDITION w systemie AMD.
- Albo โMath ADDโ na PowerPC.
Wraz ze zmianฤ systemu operacyjnego zmienia siฤ takลผe poziom i charakter wywoลaล na poziomie systemu operacyjnego.
Jako programista chcesz, aby Twoje oprogramowanie dziaลaลo na kaลผdej platformie, aby zmaksymalizowaฤ zasiฤg. Oznacza to, ลผe musiaลbyล kupiฤ osobne kompilatory, ktรณre konwertujฤ
Twoje printf polecenie do natywnego kodu maszynowego dla kaลผdego celu.
Kompilatory sฤ drogie i zawsze istnieje ryzyko problemรณw ze zgodnoลciฤ miฤdzy systemami operacyjnymi. Kupowanie i instalowanie osobnego kompilatora dla kaลผdej kombinacji system operacyjny-procesor jest niepraktyczne. Jaka jest wiฤc alternatywa? Wprowadลบ Java jฤzyk.
W jaki sposรณb Java Praca z maszynฤ wirtualnฤ ?
Przy uลผyciu Java Maszyna wirtualna, ten problem moลผna rozwiฤ zaฤ. Ale jak to dziaลa na rรณลผnych procesorach i systemach operacyjnych? Przeanalizujmy to krok po kroku.
Krok 1) Kod do wyลwietlania dodawania dwรณch liczb โ System.out.println(1+2) โ jest zapisany jako .java plik.
Krok 2) Korzystanie z Java kompilator (javac), kod jest konwertowany na kod poลredni zwany kod bajtowy.Wyjลcie jest .klasa plik.
Krok 3) Ten kod bajtowy nie jest rozumiany przez ลผadnฤ platformฤ fizycznฤ , a jedynie przez platformฤ wirtualnฤ zwanฤ Java Maszyna wirtualna.
Krok 4) Maszyna wirtualna Java (JVM) znajduje siฤ w pamiฤci RAM systemu operacyjnego. Po przesลaniu bajtkodu do maszyny wirtualnej Java, identyfikuje ona platformฤ, na ktรณrej dziaลa, i konwertuje bajtkod na natywny kod maszynowy w locie.
Podczas pracy na komputerze lub przeglฤ dania Internetu, za kaลผdym razem, gdy zobaczysz Java- powiฤ zane ikony, moลผesz mieฤ pewnoลฤ, ลผe JVM jest zaลadowana do pamiฤci RAM. Co sprawia, ลผe Java attracZaletฤ jest to, ลผe skompilowany kod moลผe dziaลaฤ nie tylko na kaลผdej platformie PC, ale takลผe na urzฤ dzeniach mobilnych i innych gadลผetach elektronicznych, ktรณre obsลugujฤ tฤ technologiฤ. Java.
"Java jest jฤzykiem programowania i jednoczeลnie platformฤ .โ
Jak jest Java Niezaleลผny od platformy?
W przeciwieลstwie do kompilatora C, Java kompilator nie tworzy natywnego kodu wykonywalnego dla konkretnej maszyny. Zamiast, Java tworzy unikalny format poลredni o nazwie kod bajtowy. Kod bajtowy wykonuje siฤ zgodnie z zasadami okreลlonymi w specyfikacji JVM, dlatego Java jest jฤzykiem niezaleลผnym od platformy.
Kod bajtowy jest zrozumiaลy dla kaลผdej wirtualnej maszyny Java (JVM) zainstalowanej w dowolnym systemie operacyjnym. Krรณtko mรณwiฤ c, Java kod ลบrรณdลowy moลผe dziaลaฤ na kaลผdym nowoczesnym systemie operacyjnym bez ponownej kompilacji, co jest podstawฤ JavaObietnica firmy โnapisz raz, uruchom wszฤdzieโ.








