Java dasturlash tili — eng yaxshi dasturlash tillaridan biri bo'lib unda korporativ darajadagi mahsulotlarni(dasturlarni) yaratish mumkin. Bu dasturlash tili Oak dasturlash tili asosida paydo bo'ldi. Oak(ma'nosi eman daraxti) dasturlash tili 90-yillarning boshida Sun Microsystems(hozirda Oracle nomidan ish yuritadi) tomonidan platformaga(operatsion tizimga) bog'liq bo'lmagan holda ishlovchi yangi avlod aqlli qurilmalarini yaratishni maqsad qilib harakat boshlagan edi. Bunga erishish uchun Sun hodimlari C++ ni ishlatishni rejalashtirdilar, lekin ba'zi sabablarga ko'ra bu fikridan voz kechishdi. Oak muvofaqiyatsiz chiqdi va 1995-yilda Sun uning nomini Java ga almashtirdi, va uni WWW rivojlanishiga hizmat qilishi uchun ma'lum o'zgarishlar qilishdi.
Java 1990 yillarda ishlab chiqarila boshlangan bo'lsa ham, uning birinchi versiyasi(Java 1.0) 1996 yil ommaga taqdim etilgan. Undan so'ng keyingi versiyalar sekin-astalik bilan chiqa boshladi: 1998 yil — Java 2, 2004 yil — Java 5.0, 2006 yil — Java 6, 2011 yil — Java 7, 2014 yil — Java 8. Java Obyektga Yo'naltirilgan Dasturlash(OOP-object oriented programming, ООП) tili va u C++ ga ancha o'xshash. Eng ko'p yo'l qo'yildigan xatolarga sabab bo'luvchi qismalari olib tashlanib, Java dasturlash tili ancha soddalashtirildi.
Java texnologiyasi o'ta sodda, xavfsizlikni yuqori darajada ta'minlab bera oladigan, kuchli, to'la obyektga yo'naltirilgan dasturlash tili bo'lib, muhit (platforma)ga bo'liq bo'lmagan holda ishlaydi. U bilan xatto eng kichik qurilmalarga ham dasturlar yozish mumkin. Java texnologiyasi to'laligicha Java Virtual Machine(JVM) ga asoslangan. JVM ning vazifasi tarjimonlik ya'ni, dastlab biz yozgan *.java fayl kompilyator yordamida bayt kodga o'giriladi va JVM yordamida esa mashina tiliga aylantiriladi. Bu degani JVM qaysi platformaga tegishli bo'lsa, kodlarni ham o'sha platformaga moslab beradi.
JAVA имкониятлари: — WORA — Write Once, Run Anywhere (portable). Platforma tanlamaydi;
— havfsizlik (ishonch yuq kodni havfsiz ishga tushirish);
— hotirani havfsiz boshqarish (avtomat ravishda musorlarni yig'adi);
— tarmoq uchun dasturlar yozish ;
— ko'p oqimli (Multi-thread) dasturlash;
class lar alohida fayllarda saqlanadi. Kerak bo'lsa ishlatiladi.
Java texnologiyalari. Java SE (Java Standart Edition) — serverda, shaxsiy kompyuterda desktoplarda ishlovchi dasturlar, appletlar yaratish uchun ishlatiladi. Bu texnologiya yordamida yaratilgan dasturlar deyarli barcha operatsion tizimlarda ishlay oladi(Windows NT, Macintosh,Linux va Solaris). Shu bilan birga JavaSE boshqa Java turlarining asosi hisoblanadi.
Java EE (Java Enterprise Edition) — Java texnologiyalari orasida eng keng tarqalgan turi xisoblanib unda asosan serverda ishlovchi dasturlar yaratiladi, masalan ko'p foydalanuvchili web-saytlar yaratishda keng qo'llaniladi va asosan internetda ishlovchi dasturlarda qo'llaniladi. Java SE ni Java EE dan eng asosiy farqi Java EE o'z tarkibiga Java SE ni olibgina qolmay shu bilan birga ko'pgina boshqa qo'shimcha kutubxonalarni(odatda *.jar) ham o'z ichiga oladi ya'ni: Servlet, JavaMail, JSF(Java Server Face) va boshqa ko'pgina internetga asoslangan qoshimcha kutubxonalar.
Java ME (Java Micro Edition) — Java SE ning ba'zi qismlarini o'z ichiga oladi, JavaME yordamida kichik qurilmalar uchun dastrular yozish mumkin, masalan, mobil telefon uchun o'yinlar, dasturlar yaratish mumkin.
Javada kompilyator aytib o'tganimizdek biz yozgan kodni bayt-kodga o'giradi, odatda kompilatsiyadan o'tgan klasslar *.class qisqartirmasi bilan tugaydi va kompilatsiyadan o'tgan klassni Java Virtual Machine(JVM) ga yuklanadi va bayt-kodli fayllarni interpretatsiya qiladi, ya'ni mashina tiliga o'giradi va shu bilan birga undagi kodni imkoni boricha optimallashtiradi.