Въведение в Java
⚡ Умно обобщение
Въведение в Java обяснява универсален, базиран на класове, обектно-ориентиран език за програмиране, който служи и като изчислителна платформа. Този урок обхваща JavaИсторията, версиите, функциите, основните компоненти (JDK, JVM, JRE), изданията на платформата и механизмът на байткод, който го прави... Java истински език за писане веднъж, който може да се изпълнява навсякъде.

Какво е Java?
Java е универсален, базиран на класове, обектно-ориентиран език за програмиране, проектиран за минимални зависимости от имплементацията. Той е и изчислителна платформа за разработване на приложения. Java е бърз, сигурен и надежден, поради което захранва софтуер на лаптопи, центрове за данни, игрови конзоли, научни суперкомпютри, мобилни телефони и вградени устройства. Като мултиплатформен, мрежово-центричен език, Java остава един от най-широко използваните езици за програмиране в индустрията и е предпочитан от повечето организации за изграждане на критично важни проекти.
Каква е Java Платформа?
- Java платформа е колекция от програми, която помага на разработчиците да създават и изпълняват Java приложенията ефективно. Той обединява механизъм за изпълнение, компилатор и набор от библиотеки, заедно със спецификациите, които определят как те взаимодействат. Джеймс Гослинг разработи Java платформа в Sun Microsystems и Oracle Корпорацията го придоби чрез придобиването на Sun през 2009 г.
Това видео представя Java платформа и обяснява защо Java е едновременно платформа и език за програмиране:
Кликнете тук ако видеото не е достъпно.
Какво е Java Използвани за?
Ето някои от най-важните приложения в реалния свят на Java:
- Развиванеping Android Приложения.
- Изграждане на корпоративен софтуер за големи организации.
- Захранване на широка гама мобилни устройства Java приложения.
- Изпълняване на приложения за научни изчисления.
- Управление на канали за анализ на големи данни.
- Програмиране на вградени хардуерни устройства.
- Сървърни технологии като Apache, JBoss, GlassFish и Tomcat.
История на Java Програмен език
Ето важните забележителности от историята на Java език:
- - Java език първоначално се нарича OAK.
- Първоначално е разработен за работа с преносими устройства и приемници, където OAK се оказа търговски неуспешен.
- През 1995 г. Sun преименува езика на „Java„и го префокусира, за да се възползва от бързо разрастващата се световна мрежа.“
- В 2009, Oracle Corporation придоби Sun Microsystems и пое собствеността върху три ключови софтуерни актива на Sun: Java, MySQL, и Solaris.
Java Версии
Ето кратка история на Java версии и техните дати на издаване, актуализирани чрез най-новото издание за дългосрочна поддръжка:
| Java версия | Дата на излизане |
|---|---|
| JDK алфа и бета | 1995 |
| JDK1.0 | 23rd Jan 1996 |
| JDK1.1 | 19th февруари 1997 |
| J2SE 1.2 | 8 Дек 1998 |
| J2SE 1.3 | 8th май 2000 |
| J2SE 1.4 | 6th февруари 2002 |
| J2SE 5.0 | 30th септември 2004 |
| Java SE 6 | 11 Дек 2006 |
| Java SE 7 | 28 юли 2011 |
| Java SE 8 (LTS) | 18th Mar 2014 |
| Java SE 9 | 21 септември 2017 г |
| Java SE 10 | 20th Mar 2018 |
| Java SE 11 (LTS) | 25th септември 2018 |
| Java SE 12 | 19th Mar 2019 |
| Java SE 13 | 17th септември 2019 |
| Java SE 14 | 17th Mar 2020 |
| Java SE 15 | 15th септември 2020 |
| Java SE 16 | 16th Mar 2021 |
| Java SE 17 (LTS) | 14th септември 2021 |
| Java SE 18 | 22 март 2022 г |
| Java SE 19 | 20th септември 2022 |
| Java SE 20 | 21st Mar 2023 |
| Java SE 21 (LTS) | 19th септември 2023 |
| Java SE 22 | 19th Mar 2024 |
| Java SE 23 | 17th септември 2024 |
| Java SE 24 | 18th Mar 2025 |
| Java SE 25 (LTS) | 16th септември 2025 |
Java Характеристики:
Ето някои от най-важните Java характеристики, които го поддържат актуален в продължение на почти три десетилетия:
- Това е един от най-лесните за изучаване обектно-ориентирани езици за програмиране.
- „Пишете веднъж, изпълнявайте навсякъде“ – код, компилиран на една машина, работи на почти всяка компютърна платформа.
- Java е платформено независим благодарение на своя модел на изпълнение на байткод.
- Той е проектиран от самото начало за обектно-ориентирани приложения.
- Това е многонишков език с автоматично управление на паметта (събиране на боклук).
- Той е създаден за разпределената среда на интернет.
- Той улеснява разпределените изчисления поради мрежово-центричния си дизайн.
Компоненти на Java Програмен език
A Java Програмистът пише код на език, разбираем за човек, наречен изходен кодПроцесорът никога не разбира директно изходния код — процесорите изпълняват само машинен код, а този машинен код се различава в различните семейства процесори. За да се преодолее тази празнина, Java Платформата превежда изходния код в преносима междинна форма. Всичко това се случва в рамките на три основни компонента: JDK, JVM и JRE.
Java Комплект за разработка (JDK)
JDK е среда за разработка на софтуер, използвана за изграждане на аплети и Java приложения. Пълната форма на JDK е Java Комплект за разработка. Java разработчиците могат да го използват на Windows, macOS, Solarisи Linux. JDK им помага да кодират и изпълняват Java програми. Възможно е да инсталирате повече от една JDK версия на един и същи компютър.
Защо да използваме JDK?
- JDK съдържа инструментите, необходими за писане Java програми и JRE за тяхното изпълнение.
- Включва компилатор (
javac), Java програма за стартиране на приложения, AppletViewer и подобни помощни програми. - Компилаторът преобразува код, написан на Java в байткод.
- - Java инструментът за стартиране на приложения отваря JRE, зарежда необходимия клас и изпълнява главния му метод.
Java Виртуална машина (JVM)
- Java Виртуална машина (JVM) е двигател, който осигурява среда за изпълнение на шофиране Java код или приложения. Той преобразува Java байткод в машинен език. JVM е част от Java Runtime Environment (JRE). В други езици за програмиране компилаторът създава машинен код за определена система. Въпреки това, Java компилаторът създава код за виртуална машина, известна като Java Виртуална машина.
Защо JVM?
- JVM предоставя независим от платформата начин за изпълнение Java изходен код.
- Той разполага с множество библиотеки, инструменти и рамки, налични веднага след инсталирането му.
- След като компилирате Java програма, можете да я стартирате на всяка платформа, което спестява значително време.
- JVM се доставя с JIT (Just-In-Time) компилатор, който преобразува байткод в ниско ниво на машинен език по време на изпълнение, което често го прави по-бърз от интерпретирано приложение.
Java Среда за изпълнение (JRE)
JRE е софтуер, предназначен за изпълнение на друг софтуер. Той съдържа библиотеки с класове, клас за зареждане и JVM. С прости думи, ако искате само да стартирате Java програма (а не да разработвате такава), ви е необходима JRE, а не пълният JDK.
Защо да използваме JRE?
- JRE съдържа библиотеки с класове, JVM и други поддържащи файлове. Не включва инструменти за разработчици, като например дебъгер или компилатор.
- Той използва важни класове пакети, включително
math,swing,util,lang,awtи библиотеки за изпълнение. - Ако трябва да бягате Java аплети или приложения, JRE трябва да бъде инсталирана на вашата система.
Различни видове Java Платформи
Има четири различни Java платформи за програмни езици, всяка от които е настроена към различна цел за внедряване:
1. Java Платформа, стандартно издание (Java SE): Java API на SE предлага Java основната функционалност на езика за програмиране. Той дефинира всичко - от базови типове и обекти до класове от високо ниво, използвани за работа в мрежа, сигурност, достъп до бази данни, разработване на графичен потребителски интерфейс (GUI) и XML парсинг.
2. Java Платформа, Enterprise Edition (Jakarta EE, преди това Java EE): Платформата Jakarta EE предлага API и среда за изпълнение за разработкаping и изпълнение на високо мащабируеми, мащабни, многослойни, надеждни и сигурни мрежови приложения. Oracle прехвърли платформата на Eclipse Foundation през 2017 г., което го преименува на Jakarta EE.
3. Java Платформа, Микро издание (Java АЗ): - Java Платформата ME предлага API и виртуална машина с малък отпечатък за изпълнение Java приложения на малки устройства, като например обикновени телефони и вградени контролери.
4. JavaFX: JavaFX е платформа за разработкаping богати интернет приложения, използващи лек потребителски интерфейс API. Използва хардуерно ускорена графика и медийни двигатели, които помагат Java Възползвайте се от по-високопроизводителни клиенти, модерен външен вид и високо ниво на API за свързване към мрежови източници на данни.
За да разберем Java език за програмиране, трябва да преразгледаме някои основни концепции за това как една компютърна програма изпълнява команди и действия.
Какво е компютър?
Компютърът е електронно устройство, способно да извършва изчисления. Състои се от монитор, клавиатура, мишка и памет за съхраняване на информация. Най-важният компонент обаче е ПРОЦЕСОРЪТ. Процесорът извършва цялата мисловна дейност на компютъра - но как всъщност го прави? Как разбира текст, изображения и видеоклипове?

Какво е Assembly език?
Компютърът е електронно устройство, така че той разбира само електронни сигнали - двоични сигнали. Електронен сигнал от 5 волта може да представлява двоично число 1, докато 0 волта може да представлява двоично число 0. Вашият компютър е непрекъснато бомбардиран с тези сигнали.
Осем бита от тези сигнали са групирани заедно, за да интерпретират текст, числа и символи.
Например, символът # се идентифицира от компютъра като 10101010. По подобен начин, шаблонът за функция „събиране“ се представя с 10000011.
Това е известно като 8-битови изчисления. Съвременните процесори са способни да декодират 64-битови инструкции едновременно. И така, какво общо има тази концепция с... JavaНека разгледаме един пример.
Да предположим, че искате да кажете на компютъра да събере две числа (1 + 2), представени с някакви двоични числа (10000011). Как да съобщите това на компютъра си? Използвате асемблерен език, за да изпълните кода си.
"Assembly Езикът е най-елементарната форма на езиците за разработка на софтуер.“
Издавате команди в следния формат. Кодът за събиране на две числа на асемблерен език би изглеждал така:
- Запазете номер 1 на място в паметта А.
- Запазете номер 2 на място в паметта B.
- Добавете съдържанието на местоположения A и B.
- Запазете резултата.
През 1950-те години на миналия век, когато компютрите бяха огромни и енергоемки, се преобразуваше асемблерен код в съответен машинен код (1 и 0), използвайки map.ping листове. След това кодът се щанцоваше в машинни карти и се подаваше към компютъра. Компютърът четеше тези кодове и изпълняваше програмата. Това беше дълъг процес - докато не пристигна АСЕМБЛЕРЪТ, за да автоматизира преобразуването.
Какво представляват асемблерът и компилаторът?
С напредъка на технологиите бяха изобретени входно/изходните устройства. Можете да въведете програмата си директно в компютъра, използвайки ASSEMBLER, който я преобразува в съответния машинен код (110001…) и го подава към процесора. Връщайки се към нашия пример 1 + 2, асемблерът преобразува асемблерния код в машинен код като изход.
Освен асемблирането, трябва също да се извикват функции, предоставени от операционната система, за да се покаже резултатът.
Само асемблерът не е достатъчен; той се нуждае и от КОМПИЛАТОР, който да компресира дългия изходен код на по-малки, оптимизирани парчета. При езиците за разработка на софтуер от по-високо ниво, целият фрагмент от асемблер по-горе се свива до един ред, например printf("%d", 1+2)Компилаторът преобразува вашия C език код в асемблерски код; след това асемблерът го преобразува в машинен код transmitсвързано с процесора. Най-разпространеният процесор, използван в персоналните компютри, е процесорът Intel.
Съвременните компилатори често включват асемблера, за да могат да конвертират код на език от по-високо ниво директно в машинен код.
Сега, да предположим Windows работи на процесор Intel — комбинацията от операционна система и процесор се нарича ПЛАТФОРМА. Най-разпространената платформа е Windows на Intel, известна още като платформата Wintel. Други популярни платформи включват AMD, Linux, PowerPC и macOS.
С промяна на процесора, инструкциите за асемблиране също се променят. Например:
- Инструкцията „добавяне“ на Intel може да се нарече ADDITION на AMD.
- Или „Math ADD“ на PowerPC.
И с промяна в операционната система, нивото и естеството на повикванията на ниво операционна система също се променят.
Като разработчик, искате вашият софтуер да работи на всяка платформа, за да увеличите максимално обхвата. Това означава, че ще трябва да закупите отделни компилатори, които конвертират вашия printf команда в оригиналния машинен код за всяка цел.
Компилаторите са скъпи и винаги съществува риск от проблеми със съвместимостта между различните операционни системи. Купуването и инсталирането на отделен компилатор за всяка комбинация операционна система и процесор не е практично. И така, каква е алтернативата? Въведете... Java език.
Как ли Java Работа с виртуална машина?
Чрез използване на Java Виртуална машина, този проблем може да бъде решен. Но как работи на различни процесори и операционни системи? Нека го разгледаме стъпка по стъпка.
Стъпка 1) Кодът за показване на събирането на две числа — System.out.println(1+2) — се запазва като .java файл.
Стъпка 2) Използване на Java компилатор (javac), кодът се преобразува в междинен код, наречен байткодИзходът е .клас файл.
Стъпка 3) Този байткод не се разбира от никоя физическа платформа, а само от виртуална платформа, наречена Java Виртуална машина.
Стъпка 4) JVM се намира в RAM паметта на вашата операционна система. Когато JVM получи този байткод, тя идентифицира платформата, на която работи, и преобразува байткода в машинен код в движение.
Докато работите на компютъра си или сърфирате в интернет, винаги когато видите Javaсвързани с икони, можете да сте сигурни, че JVM е заредена във вашата RAM памет. Какво прави Java attracПредимството е, че компилираният код може да работи не само на всяка PC платформа, но и на мобилни телефони и други електронни устройства, които поддържат Java.
"Java е език за програмиране, както и платформа.“
Как е Java Независимо от платформата?
За разлика от C компилатора, Java компилаторът не създава естествен изпълним код за конкретна машина. вместо това Java създава уникален междинен формат, наречен байткодБайткодът се изпълнява съгласно правилата, посочени в спецификацията на JVM, поради което Java е език, независим от платформата.
Байткодът е разбираем за всяка JVM, инсталирана на всяка операционна система. Накратко, Java изходният код може да работи на всяка съвременна операционна система без рекомпилация, което е основата на Javaобещанието на „пиши веднъж, изпълнявай навсякъде“.








