Java programozási nyelv alapjai

A Java a Sun Microsystems által 1995-ben kifejlesztett programozási nyelv, amelyet később az Oracle szerzett meg. Ez most egy teljes platform, rengeteg standard API-val, nyílt forráskódú API-val, eszközökkel, hatalmas fejlesztői közösséggel, és a legmegbízhatóbb vállalati megoldások kiépítésére használják, mind nagy, mind kis vállalatok számára. Az Android alkalmazás fejlesztése teljes mértékben a Java-val és annak ökoszisztémájával történik. Ha többet szeretne tudni a Java-ról, olvassa el ezt és ezt.

Változat

A legújabb verzió a Java 11, amelyet 2018-ban adtak ki különböző fejlesztésekkel az előző Java 10-hez képest. De minden célból a Java 8-at fogjuk használni ebben a wikiben az összes oktatóanyaghoz.

A Java szintén több „kiadásra” oszlik:

  • SE - Standard Edition - asztali és önálló kiszolgálóalkalmazásokhoz
  • EE - Enterprise Edition - Java szerverekbe ágyazottan futó Java-összetevők fejlesztésére és végrehajtására
  • ME - Micro Edition - Java alkalmazások fejlesztéséhez és futtatásához mobiltelefonokon és beágyazott eszközökön

Telepítés: JDK vagy JRE?

Töltse le a legfrissebb Java bináris fájlokat a hivatalos webhelyről. Itt felmerülhet egy kérdés, melyiket töltse le: JDK vagy JRE? A JRE a Java Runtime Environment rövidítést jelenti, amely egy platformfüggő Java virtuális gép a Java kódok futtatásához, a JDK pedig a Java Development Kit kifejezést, amely a legtöbb fejlesztőeszközből áll, legfőképpen a fordítóból javac, valamint a JRE-ből. Tehát egy átlagos felhasználó számára a JRE elegendő lenne, de mivel Java-val fejlesztenénk, letöltenénk a JDK-t.

Platformspecifikus telepítési utasítások

ablakok

  • Töltse le a vonatkozó .msi fájlt (x86 / i586 32 bites, x64 64 bites)
  • Futtassa az .msi fájlt. Ez egy önkicsomagoló futtatható fájl, amely telepíti a Java-t a rendszeredbe!

Linux

  • Töltse le a rendszeréhez tartozó tar.gz fájlt, és telepítse:

bash $ tar zxvf jdk-8uversion-linux-x64.tar.gz

  • RPM alapú Linux platformok töltsék le a vonatkozó .rpm fájlt, és telepítsék:

bash $ rpm -ivh jdk-8uversion-linux-x64.rpm

  • A felhasználók választhatják a Java, az OpenJDK vagy az Oracle JDK nyílt forráskódú verziójának telepítését. Míg az OpenJDK aktív fejlesztés alatt áll és szinkronban van az Oracle JDK-val, csak különböznek a licencelési dolgokban. Azonban kevés fejlesztő panaszkodik az Open JDK stabilitására. Utasítások az Ubuntu számára :

Nyissa meg a JDK telepítését:

bash sudo apt-get install openjdk-8-jdk

Oracle JDK telepítés:

bash sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer

Mac

  • Vagy töltse le a Mac OSX .dmg futtatható fájlt az Oracle Downloads alkalmazásból
  • Vagy használja a Homebrew-t a telepítéshez:
brew tap caskroom/cask brew install brew-cask brew cask install java

Ellenőrizze a telepítést

A Parancssor (Windows) / Windows Powershell / Terminal (Mac OS és * Unix) megnyitásával, valamint a Java futásidejű és fordító verzióinak ellenőrzésével ellenőrizze, hogy a Java megfelelően van-e telepítve a rendszerében:

$ java -version java version "1.8.0_66" Java(TM) SE Runtime Environment (build 1.8.0_66-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode) $ javac -version javac 1.8.0_66

Tipp : Ha hibaüzenetet kap, mint a „command not found” bármelyikjavavagyjavacvagy mindkettő, ne pánik, hogy csak a rendszer PATH nincs megfelelően beállítva. Windows esetén olvassa el ezt a StackOverflow választ vagy ezt a cikket a végrehajtásáról. Vannak útmutatók az Ubuntu és a Mac számára is. Ha még mindig nem találja ki, ne aggódjon, kérdezzen meg minket a Gitter szobánkban!

JVM

Most, hogy befejeztük a telepítéseket, kezdjük megérteni először a Java ökoszisztéma apró szemcsésségét. A Java egy értelmezett és lefordított nyelv, vagyis az általunk írt kód fordításra kerül bytecode-ra, és futásra értelmezve. A kódot .java fájlokba írjuk, a Java bájtkódokká fordítja őket, amelyeket egy Java virtuális gépen vagy JVM-en futtatnak végrehajtás céljából. Ezek a bájtkódok általában .class kiterjesztéssel rendelkeznek.

A Java egy elég biztonságos nyelv, mivel nem engedi, hogy a program közvetlenül a gépen fusson. Ehelyett a program egy JVM nevű virtuális gépen fut. Ez a virtuális gép számos API-t mutat be az alacsony szintű gépi interakciókhoz, amelyeket kivitelezhet, de azon kívül, hogy nem játszhat le kifejezetten gépi utasításokkal. Ez óriási bónusz biztonságot jelent.

Ezenkívül a bájtkód fordítása után bármely Java virtuális gépen futtatható. Ez a virtuális gép gépfüggő, azaz különböző megvalósításokkal rendelkezik a Windows, a Linux és a Mac számára. De a program garantáltan bármely rendszerben futtatható ennek a virtuális gépnek köszönhetően. Ezt a filozófiát „Írj egyszer, fuss bárhova” nevezzük.

Helló Világ!

Írjunk egy mintát a Hello World alkalmazásról. Nyissa meg a kívánt szerkesztőt / IDE-t, és hozzon létre egy fájlt HelloWorld.java.

public class HelloWorld { public static void main(String[] args) { // Prints "Hello, World" to the terminal window. System.out.println("Hello, World"); } }

Megjegyzés: A fordításhoz ne feledje, hogy a Java fájlnévnek pontosan a nyilvános osztály nevének kell lennie!

Most nyissa meg a terminált / Parancssorot. Módosítsa a terminál / parancssor aktuális könyvtárát arra a könyvtárra, ahol a fájl található. És állítsa le a fájlt:

$ javac HelloWorld.java

Most futtassa a fájlt a javaparancs segítségével !

$ java HelloWorld Hello, World

Congrats! Your first Java program has run successfully. Here we are just printing a string passing it to the API System.out.println. We will cover all the concepts in the code, but you are welcome to take a closer look! If you have any doubt or need additional help, feel free to contact us anytime in our Gitter Chatroom!

Documentation

Java is heavily documented, as it supports huge amounts of API’s. If you are using any major IDE such as Eclipse or IntelliJ IDEA, you would find the Java Documentation included within.

Also, here is a list of free IDEs for Java coding:

  • NetBeans
  • Eclipse
  • IntelliJ IDEA
  • Android Studio
  • BlueJ
  • jEdit
  • Oracle JDeveloper