Java атамасининг келиб чиқиши тўғрисида Ҳар-Ҳил фикрлар бор. Кимдир бу ном Индонезия мамлакати худуди Малай архипилагидаги Ява ороли билан боғлиқ деса, бошқа бир гурух бу номни дастурлаш тили яратувчилари севиб истеъмол қиладиган кофе тури номидан келиб чиққан дейишади. Қандай бўлишидан қатъий назар ушбу дастурлаш тилининг яратилишини 1995 йил 23 май деб белгилашган. Java дастлаб телефонга ўхшаш маиший электрон қурилмаларни дастурлаш учун ишлатилган. Кейинчалик броузерларни дастурлаш учун қўлланилди – апплетлар яратилди. Сўнгра Java дан фойдаланиб тўла қонли Амалий дастурлар яратила бошланди. Амалий дастурларнинг график э лементлари компонентлар кўринишида шакллантирилди. Шунга мос равишда JavaBeans пайдо бўлди. JavaBeans билан бирга Java тарқоқ тизимлар оламига оралиқ дастур таъминоти сифатида кириб келди. Бу э са CORBA технологияси билан чамбарчас боғлиқ э ди. Java дан фойдаланиб Серверларни дастурлашга бир қадам қолди. Сервлетлар ва EJB (Enterprise JavaBeans) ларнинг пайдо бўлиши билан ушбу қадам босиб ўтилди. Серверлар маълумотлар базаси билан Ҳамкорликда ишлаши зарур эди, шунинг учун JDBC (Java DataBase Connection) драйверлари пайдо бўлди. Қамкорлик муваффақиятли чиқди, маълумотлар базасини бошқарувчи кўп тизимлар(Oracle), қатто операцион тизимлар (Linux, MacOS X, AIX) ўзларининг ядросига Java ни киритишди. Хозирги пайтда Java ишлатилмайдиган йўналиш деярли йўқ деса бўлади. Шундай қилиб Java технология мақомини олди. 3-мавзу. Сизнинг биринчи дастурингиз. Яниг апплетни тузишга ўтишимиздан аввал , java дастуридан битта мисол кўриб ўтамиз ва java программалаш тили билан танишишга ўтамиз. Дастур – бу java интерпретатори ѐрдамида фойдаланувчи компьютерида бажариладиган дастурдир. Хозир кўоиб ўтадиган прграммамиз консоль ойнасида “Hello, World” ѐзувини чиқариш программасини тузамиз.Буни дарров айтишимиз мумкм: java программасида яратишимиз учун нима қилиш керак , бу main() методи орқали амалга оширилади.Main() методи java дасткримизни юклашда биринчи бошқарувчи Ҳисоблнади . Main() методининг параметрлари String турига тегишли Ҳисобланади. Дастур коди.”Hello , Happy World” дастури.HelloHappyWorld файли. public class HelloHappyWorld { public sratic void main( String [] args) { System.put.println(“Hello, Happy World”); } } 4-мавзу. Дастурни юклаш. Бунинг учун Текстни териб бўлгандан кейин ишчи каталог яратиб олишингиз керак. HelloHappyWorld.java файли каталогда жойлашиши керак. Бунда шу нарсага диккатингизни қаратишингиз кераккки java файл ва класснинг номи айнан бир хил бўлиши керак MS-DOC ойнасида ж орий каталогимизни очиб оламиз ва команда ѐзиш қаторига қуийдаги командани ѐзамиз: javac HelloHappyWorld.java Агар javac тшлиқ юкланса хеч қандай хатолик хақида хабар чиқармайди (унинг хатоликсиз ишлаши autoexec.bat фалйида ўрнатилган path ва classpath ўзгарувчиларига боғлиқ) ва яна ж орий каталогни очиб беради. Ундан кейин яна командалар териш сатрига қуийдагини ѐзамиз: java HelloHeppyWorld Ва натижа қуийдагича бўлади.(1-расм). 5-мавзу. Класслар, методлар ва конструкторлар. Хамма java дастурлар тўрттта асосий болкдан ташкил топган бўлади , булар қуийдагилар : Класслар , методлар , ўзгарувчилар ва пакетлар.Сиз ишлаган бош қа хохлаган программалаш тилларида методларнинг функциялардан ѐки қисмдастурлар ва маълумотларни сақловчи ўзгарувчилардандан иборат э канлигини биласиз. Класснинг ўзгарувчлари одатда майдонлар деб аталади.Класслар объектга йўналтирилган програмалаш асосида ташкил қилинади.Классларда инкапсуляц ия орқали ўзгарувчилар майдонлар ўзаро биргаликда ишлайдиган тизимни Ҳосил қилада ва булар биргаликда программада объектни Ҳосил қилади.Объектлар махсус метод класси конструктор ѐрдамида Ҳосил қилинади.Ва ниҲоят фойдаланувчи программаси ишлаши керак бўлган Ҳамма класслар тўплами ж ойлашган пакетлар яратилади. Классларнинг умумий тузилишини қуийдагича ѐзишимиз мумкин: class class_name { //классдаги ўзгарувчиларни аниқлаш //класс конструкторлари //класс методлари } Пастда келтирилган программамизда иккита класс яратилган улар: ComplexNumber, TestComplexNumber лардир. TestComplexNumer да ComplexNumber класси асосида яратилган объект ишга туширилади. ComplexNumber классида комплекс сонлар ифодаланади. Бу классда иккита ўзгарувчи real ва image орқали комплекс сонларнинг хақиқий ва каср қийматлари топилади.Бундан ташқари иккита конструктор ва иккита метод ишлатилган . class class_name { private double real; private double image; //конструктор public ComplexNumber(double r,double i) { real = r; image = i; } // Конструктор public ComplexNumber(double r) { this(r,0.0); } //метод public ComplexNumber add(ComplexNumber cn) { return new ComplexNumber(real + cn.real,imag + cn.imag); } //метод public String toString() { String msg; msg = "("+real+","+imag+")"; return msg; } } public class TestComplexNumber { public static void main(String [] s) { ComplexNumber cn1=new ComplexNumber(1.0,7.0); ComplexNumber cn2=new ComplexNumber(5.0); ComplexNumber res=cn1.add(cn2); System.out.println(cn1.toString()+"+"+ cn2.toString()+"="+ res.toString()); try{System.in.read();} catch(java.io.IOException e){} } } class class_name { private double real; private double image; //конструктор public ComplexNumber(double r,double i) { real = r; image = i; } // Конструктор public ComplexNumber(double r) { this(r,0.0); } //метод public ComplexNumber add(ComplexNumber cn) { return new ComplexNumber(real + cn.real,imag + cn.imag); } //метод public String toString() { String msg; msg = "("+real+","+imag+")"; return msg; } } public class TestComplexNumber { public static void main(String [] s) { ComplexNumber cn1=new ComplexNumber(1.0,7.0); ComplexNumber cn2=new ComplexNumber(5.0); ComplexNumber res=cn1.add(cn2); System.out.println(cn1.toString()+"+"+ cn2.toString()+"="+ res.toString()); try{System.in.read();} catch(java.io.IOException e){} } }