java components java platform
Bu Öğretici, bir Platform Olarak Java'nın Ayrıntılı Bir Açıklamasını ve Bileşenlerini, yani JRE, JDK, Java Sanal Makinesi ve JRE ile JDK Arasındaki Farkı verir:
Windows ile karşılaştırıldığında ubuntu ne kadar iyi
Java, platformun yanı sıra bir programlama dili olarak tanımlanmıştır. Giriş dersimizde, bir platformun programları veya uygulamaları çalıştırabileceğimiz bir yazılım ortamı olduğunu zaten tartışmıştık.
Bu eğitimde bir platform olarak Java'yı tartışacağız. Ayrıca Java platform bileşenlerini tartışacağız ve nasıl çalıştıklarını göreceğiz.
=> Kolay Java Eğitim Serisini Okuyun.
Ne öğreneceksin:
Java Platformu
Java platformu, Java programlama dilinde yazılmış uygulamaları yürütmemize yardımcı olan bir yazılım veya programlar koleksiyonudur. Bir Java platformu, bir Java derleyicisinden, bir dizi kitaplıktan ve bir yürütme motorundan oluşur.
Java platformu, Java programlama dilini platformdan bağımsız bir dil yapan herhangi bir işletim sisteminden bağımsızdır.
Java platformu aşağıdaki bileşenlerden oluşur.
- Java dili
- Java Geliştirme Kiti (JDK)
- Java Runtime Environment (JRE)
- Java Derleyici
- Java Sanal Makinesi (JVM)
Yukarıdaki ana bileşenlerin yanı sıra Java platformu, Java uygulamalarını verimli bir şekilde çalıştırmak için gerekli olan çöp toplayıcıları, bir dizi kitaplığı ve diğer ek bileşenleri ve araçları da içerir.
Tüm bu bileşenler arasındaki ilişkiyi gösteren aşağıdaki diyagramı ele alalım.
Yani yukarıdaki diyagramdan şu sonuca varabiliriz:
JRE = JVM + kitaplık sınıfları.
JDK = JRE + Geliştirici araçları.
Bileşenlerin her birini ele almadan önce, ilk olarak Java programının yürütme akışını anlayalım.
Aşağıdaki şema bir Java programının akışını göstermektedir.
Dolayısıyla, yukarıdaki diyagram bir Java programı için basit bir yürütme akışını göstermektedir. Java dilinde yazılmış bir program Java derleyicisi (javac) tarafından derlenir. Derlemeden sonra makine kodu üreten diğer dil derleyicilerinden farklı olarak, Javac derleyicisi bayt kodundan oluşan bir sınıf dosyası oluşturur.
Şimdi, bu sınıf dosyası, sınıf dosyasını makineye bağlı kod içeren bir nesne dosyasına çeviren Java Sanal Makinesi'ne (JVM) verilir. Daha sonra bu kod makine tarafından çalıştırılır.
Bu bileşenlerin her birini ayrıntılı olarak tartışalım.
Java Dili
Java, Java platformunun kullandığı bir programlama dilidir. Java, sözdizimi C'den ve OOPS özellikleri C ++ 'dan türetilen nesne yönelimli bir programlama dilidir. Sözdizimi, kuralları, biçimi ve programlama paradigmasına sahiptir.
Bu seride, Java ve programlamadaki tüm temel kavramları ayrıntılı olarak öğreneceğiz.
Java Derleyici
Bu, Java programlama dili için bir derleyicidir ve işlevi, Java kaynak kodundan Java sınıfı dosyalar oluşturmaktır. Java sınıf dosyası, platformdan bağımsız bir Java bayt kodu içerir.
Sınıf dosyalarını oluşturduktan sonra, JVM bu sınıf dosyalarını yükler ve bayt kodunu yorumlar veya Just-in-time (JIT) derleyicisini kullanarak makine koduna derler.
Java Sanal Makinesi (JVM)
JVM, Java programlama dilinin ve Java platformunun merkezidir. JVM, bayt kodunu makineye özgü koda dönüştürür (diğer programcı dillerinde nesne kodu olarak da bilinir).
JVM, çöp toplama, bellek yönetimi, güvenlik vb. İşlevsellik sağlar. JVM platformdan bağımsızdır ve işlevselliğini sağladığı, makineye bağımlı olmayan ve aynı zamanda işletim sisteminden de bağımsız olan bir Sanal arabirimi kullanarak özelleştirebiliriz.
JVM'nin bu platformdan bağımsız olması, bir makinede Java programları oluşturmamıza ve bunları başka bir makinede çalıştırmamıza izin verir (WORA - Yaz - Bir Kez - Çalıştır - Her Yerde).
Aşağıdaki şema, bir JVM'nin çeşitli bölümlerini göstermektedir.
JVM, RAM'de mevcuttur. Java programı, Java derleyicisi tarafından bir sınıf dosyasına dönüştürüldüğünde, yürütülmesi gerekir.
Yürütme için sınıf dosyası, sınıf yükleyici tarafından Ram'a getirilir. Burada BYTE kodu herhangi bir güvenlik sorunu için doğrulanır. Classloader ayrıca yürütülecek programın yüklenmesi, bağlanması ve başlatılmasından da sorumludur.
deneyimli kişiler için senaryo tabanlı yazılım testi mülakat soruları ve cevapları
Yukarıdaki şemada gösterilen JVM belleği, gösterildiği gibi çeşitli bileşenler içerir ve yürütülecek mevcut talimatı içeren PC kayıtlarını, değişkenleri, dizileri vb. Tutan Heap'i tutarak programın yürütülmesine yardımcı olurlar.
JVM belleği ayrıca sırasıyla yöntem kodunu ve yerel dil belirtimini içeren yöntem alanını ve Yerel yöntem yığınını içerir. JVM yığını, programın veya geçerli iş parçacığının örneğini tutar. Birden fazla iş parçacığı varsa, her iş parçacığı kendi JVM yığınına sahip olacaktır.
Program uygun şekilde bağlandığında, yürütme motoruna aktarılır. Yürütme motoru, yerel yöntem arabirimi ve yerel yöntem kitaplıkları ile işbirliği yapar. Yerel yöntem arabirimi, Java kodunun yerel yöntem kitaplıklarının bir parçası olan kitaplıkları ve yerel uygulamaları çağırmasına olanak tanıyan bir programlama çerçevesidir.
Daha sonra, yürütme motoru Bytecode'u tam zamanında (JIT) derleyicisini kullanarak Yerel makine koduna dönüştürür. Ardından program makine tarafından yürütülür.
Not: JIT veya Tam zamanında derleyici, Java Sanal Makinesi'nin (JVM) bir parçasıdır. Bayt Kodunun aynı zamanda benzer işlevselliğe sahip bir bölümünü yorumlar. Başka bir deyişle, bayt kodunu aynı programlama seviyesinde yerel makine koduna dönüştürür. Bu, Java'nın yorumlanmış bir dilin yanı sıra derlenmesinin nedenidir.
Java Runtime Environment (JRE)
JRE, adından da anlaşılacağı gibi, Java programlarını ve uygulamalarını yürütmek için gereken çalışma zamanı ortamıdır. JRE, Java programlarını başarıyla yürütmek için Java Sanal Makinesi (JVM) ve ikili dosyalar ve diğer sınıflardan oluşur.
JRE, JDK'nın bir alt kümesidir ve Java derleyicisi, hata ayıklayıcı vb. Gibi geliştirme araçları içermez. Dolayısıyla, Java uygulamalarınız başka bir yerde geliştirildiyse ve bunları yalnızca makinenizde çalıştırmanız gerekiyorsa, JRE'yi ayrı olarak yükleyebilirsiniz. Bunun için JDK yüklemeniz gerekiyor.
Makinenizde Java programlarını çalıştırmak için minimum gereksinim olduğundan, makinenizde bir JRE'nin kurulu olması gerekir.
JRE, aşağıdaki bileşenleri içerir.
- Kod kitaplıkları, özellik ayarları ve kaynak dosyaları : Bunlar, charsets.jar, rt.jar vb. Dosyaları içerir.
- DLL dosyaları : Java hotspot istemci sanal makinesi ve sunucu sanal makinesi tarafından kullanılır.
- Java uzantısı dosyaları : Örneğin, localedata.jar gibi yerel ayar belirtimiyle ilgili dosyalar
- Dosyalar güvenlik yönetimi için gereklidir. Örneğin, java.policy, java.security
- Uygulama destek sınıfları.
- True Type yazı tipi dosyaları : Genellikle platform için gereklidir.
Java ile yazılmış herhangi bir uygulamayı / programı çalıştırmak için, sisteminizde JRE'nin kurulu olması gerekir. JRE, platforma bağlıdır. Bu, işletim sisteminiz ve mimarinizle uyumlu JRE'yi indirip yüklemeniz gerektiği anlamına gelir.
Java Geliştirme Kiti (JDK)
Bu, herhangi bir Java ortamının temel bileşenidir. JDK, Java derleyicisi, Java hata ayıklayıcı ve diğer çekirdek sınıflarla birlikte JRE'yi (Java Runtime Environment) içerir. JDK, bir Java programını derlemek, hata ayıklamak için gerekli olan tüm yürütülebilir ve ikili dosyaları ve araçları sağladığı için Java geliştirme için kullanılır.
JDK, platforma özgü bir yazılımdır ve bu nedenle, her İşletim sistemi için ayrı JDK yükleyicilerimiz olacaktır.
JDK, aşağıdaki bileşenleri içerir:
- jConsole : Bu bir Java izleme ve yönetim Konsoludur.
- kavanoz : Bu arşivleyici. Bu araç, ilgili sınıf kitaplıklarını tek bir Jar dosyasında paketlemek ve Jar dosyalarını yönetmek için kullanılır.
- jarSigner : Bu araç, jar imzalama ve doğrulama için kullanılır.
- javap: Bu, sınıf dosyası çözücü için bir araçtır.
- Javaws : JNLP uygulamaları için Java web başlatma başlatıcısı.
- jhat : Java yığın analiz aracı.
- jrunscript : Java komut satırı komut dosyası kabuğu.
- jstack : Java iş parçacıkları için yığın izlerini yazdırmak için kullanılan yardımcı program.
- Javadoc : Bu, kaynak kod açıklamalarından otomatik olarak belge oluşturur.
- uygulama görüntüleyici : Bir web tarayıcısı olmadan uygulama yürütme ve hata ayıklama için kullanılır.
- uygun : Ek açıklama işleme aracı.
- extCheck : Jar dosyası çakışmalarını kontrol etmek için kullanılan yardımcı program.
- Önemli araç : Bu yardımcı programı kullanarak Anahtar Deposunu değiştirebilirsiniz.
- politika aracı : Bu bir politika oluşturma ve yönetim aracıdır.
- xjc : Bu, XML şemasını kabul eden ve Java sınıfları oluşturan XML bağlama (JAXB) API'sinin bir parçasıdır.
Böylelikle JDK'nın bileşenlerinin geliştirme açısından bizim için gerekli olan bileşenler olduğunu görebilirsiniz.
örneklerle deneyimli için sql server mülakat soruları ve cevapları
Yukarıdaki diyagramda gösterildiği gibi, Java kaynak kodu JDK'nın bir parçası olan Java derleyicisi tarafından bayt kodlarına dönüştürülür. Daha sonra bu bayt kodu JVM'ye (yukarıda açıklanan bu işlem) aktarılır ve buradan kodun yürütüldüğü JRE'ye gider.
JDK ve JRE ile ilgili ayrıntıları gördükten sonra, şimdi JRE ve JDK arasındaki farkları tartışalım.
JRE Vs JDK
Hayır | JRE | JDK |
---|---|---|
7 | Derlenen / yorumlanan Java programını girdi olarak alır ve çıktı üretir. | Java kaynak programını derler ve daha sonra JVM'ye verilen bir sınıf dosyası oluşturur. |
bir | JRE, Java Runtime Environment'ın kısaltmasıdır. | JDK, Java Geliştirme Kiti'nin kısaltmasıdır. |
iki | Çoğunlukla Java programlarının yürütülmesi için kullanılır. | JDK, geliştiriciler tarafından Java programları geliştirmek için kullanılır. |
3 | İçinde paketlenmiş Java Sanal makinesi (JVM) içerir. | JVM yok. |
4 | JRE'de Java derleyicisi olmadığı için programları derleyemez. | JDK, javac derleyicisine sahiptir ve programları derlemekten sorumludur. |
5 | Java sınıf kitaplığı, java komutu ve diğer altyapıyı içerir. | JDK, Java uygulamaları geliştirmek için kullanılan Javadoc ve arşivleyici gibi araçlar içerir. |
6 | JRE, bağımsız bir program olarak kurulabilir. | JDK ayrı bir yükleyicidir ve JRE ile birlikte gelir. |
Sonuç
Bu eğiticide, Java Runtime Environment (JRE) ve Java derleyicisiyle birlikte gelen Java Geliştirme Kitinin (JDK) ayrıntılarını tartıştık. JRE, sırayla, Java derleyicisi tarafından oluşturulan bayt kodunu makineye özel koda dönüştürmekten sorumlu olan Java Sanal Makinesi'ni (JVM) içerir.
Java dili dahil tüm bunlar, bir Java uygulamasını çalıştırmamıza yardımcı olan bir ortam olan Java platformu adı verilen bir ana varlığın bileşenleridir. Burada ayrıca JVM'nin ayrıntılı mimarisini ve çalışmasını ve bir Java programının yürütülmesini tartıştık.
=> Java Yeni Başlayanlar Kılavuzuna Bir Göz Atın.
Önerilen Kaynaklar
- Java Sanal Makinesi: JVM, Java Uygulamasını Çalıştırmada Nasıl Yardımcı Olur?
- Java SWING Eğitimi: Konteyner, Bileşenler ve Olay İşleme
- Java Dağıtımı: Java JAR Dosyasının Oluşturulması ve Yürütülmesi
- Java'da Erişim Değiştiriciler - Örneklerle Eğitim
- Örneklerle Java Yansıtma Eğitimi
- Java Programlama Diline Giriş - Video Eğitimi
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- OOP Java: Java'da Nesne Tabanlı Programlamaya Giriş