logo

Ievads Java

Java ir uz objektu orientēta, uz klasēm balstīta programmēšanas valoda. Valoda ir izstrādāta tā, lai tajā būtu pēc iespējas mazāk atkarību ieviešanas. Šīs valodas izmantošanas nolūks ir atvieglot izstrādātājus no kodu rakstīšanas katrai platformai. Ar šo valodu bieži tiek saistīts termins WORA, raksti vienreiz un skrien visur. Tas nozīmē, ka ikreiz, kad mēs kompilējam Java kodu, mēs saņemam baita kodu (.class failu), un to var izpildīt (neatkārtoti kompilējot) dažādās platformās, ja tās atbalsta Java. 1995. gadā tika izstrādāta Java valoda. To galvenokārt izmanto tīmekļa, galddatoru un mobilo ierīču izstrādei. Java valoda ir pazīstama ar tās robustuma, drošības un vienkāršības funkcijām. Tas ir izstrādāts tā, lai būtu pēc iespējas mazāk atkarību no ieviešanas.

Vēsture

Java valodai ir ļoti interesanta vēsture. Patriks Netons, Maiks Šeridans un Džeimss Goslings, kas pazīstami kā Zaļā komanda, uzsāka Java izstrādi 1991. gadā. Šie cilvēki bija uzņēmuma inženieri. Saules mikrosistēmas . 1996. gadā pirmā publiskā ieviešana tika izlaista kā Java 1.0. Java 1.0 kompilatoru pārrakstīja Arturs Van Hofs, lai tas stingri atbilstu tā specifikācijām. Ieviešot Java 2, jaunajām versijām ir vairākas dažādas konfigurācijas, kas ir izveidotas dažādām platformām. Ir vērts atzīmēt, ka Džeimss Goslings ir pazīstams arī kā Javas tēvs.

Sun Microsystems 1997. gadā vērsās pie ISO standarta struktūras, lai formalizētu Java, taču process drīz tika atsaukts. Vienā brīdī uzņēmums Sun Microsystems nodrošināja lielāko daļu Java ieviešanas, kas bija pieejama bez maksas, neskatoties uz to, ka tai bija patentētas programmatūras statuss.

Lietojumprogrammas

Lietojumprogrammas ieviešana Java lietojumprogrammā ietver šādas darbības.

  1. Programmas izveide (koda rakstīšana)
  2. Programmas kompilācija.
  3. Sastādītā koda izpilde.

Šeit ir vērts atzīmēt, ka JDK (Java Development Kit) ir pareizi jāinstalē sistēmā, kā arī jāiestata ceļš.

Programmas izveide

Java programmu var rakstīt, izmantojot teksta redaktoru (Notepad++ vai NotePad vai citi redaktori arī paveiks šo darbu.) vai IDE (Eclipse, NetBeans utt.).

Faila nosaukums: TestClass.java

 public class TestClass { // main method public static void main(String []args) { // print statement System.out.println('Hello World is my first Java Program.'); } } 

Uzrakstiet iepriekš minēto kodu un saglabājiet failu ar nosaukumu TestClass. Failā jābūt .java pagarinājumu.

Programmas kompilācija

Atveriet komandu uzvedni un ierakstiet javac TestClass.java . javac ir komanda, kas liek Java kompilatoram sākt Java programmas kompilēšanu. Pēc komandas mums jāievieto kompilējamā faila nosaukums. Mūsu gadījumā tā ir TestClass.java . Pēc ievadīšanas nospiediet ievadīšanas pogu. Ja viss noritēs labi, tiks ģenerēts TestClass.class fails, kas satur baita kodu. Ja programmā ir kāda kļūda, kompilators to norādīs un TestClass.class netiks izveidots.

Programmas palaišana / izpilde

Kad .class fails ir izveidots, ierakstiet java TestClass lai palaistu programmu. Programmas izvade tiks parādīta konsolē, kas ir minēta zemāk.

Izvade:

 Hello World is my first Java Program. 

Nosaukums Java

Sākotnēji valodai tika dots nosaukums ozols. Tomēr komanda nolēma, ka valodai ir jāpiešķir jauns nosaukums, un tika ieteikti tādi vārdi kā DNS, revolucionārs, Jolt, Dynamic, Silk utt. Visus šos vārdus bija patīkami pateikt un viegli uzrakstīt. Taču pietrūka piedāvātajos nosaukumos esošās valodas būtības, ko komanda vēlējās iegūt. Saskaņā ar Džeimsu Goslingu, Java un Silk bija divas no populārākajām iespējām, un, tā kā Javai bija unikāls nosaukums, lielākā daļa cilvēku deva priekšroku tam.

Java ir arī nosaukums salai Indonēzijā, kur tika ražota kafija (nosaukta Java Coffee). Vārdu Java izvēlējās Džeimss Goslings, jo viņš dzēra kafiju netālu no sava biroja. Lasītājiem jāņem vērā, ka Java nav akronīms. Tas ir tikai vārds.

Java terminoloģijas

JVM (Java virtuālā mašīna): JVM ir specifikācija, kas atvieglo izpildlaika vidi, kurā notiek Java baitkoda izpilde. Ikreiz, kad tiek izmantota komanda java, tiek izveidots JVM gadījums . JVM atvieglo atmiņas apgabala, reģistru kopas, klases faila formāta un fatālu kļūdu ziņošanas definēšanu. Ņemiet vērā, ka JVM ir atkarīgs no platformas.

Baita kods: Ievaddaļā jau tika runāts, ka Java kompilators apkopo Java kodu, lai ģenerētu .class failu vai baitu kodu. Ir jāizmanto javac komandu, lai izsauktu Java kompilatoru.

Java izstrādes komplekts (JDK): Tas ir pilns Java izstrādes komplekts, kas ietver visu, tostarp JRE (Java Runtime Environment), kompilatoru, java dokumentus, atkļūdotājus utt. Lai izveidotu, apkopotu un izpildītu Java programmu, datorā ir jāinstalē JDK.

Java izpildlaika vide (JRE): JRE ir daļa no JDK. Ja sistēmā ir instalēts tikai JRE, lietotājs var palaist tikai programmu. Citiem vārdiem sakot, tikai java komanda darbojas. Java programmas kompilēšana nebūs iespējama ( javac komanda nedarbosies).

Atkritumu savācējs: Programmētāji nevar izdzēst objektus Java. Lai to izdarītu, JVM ir programma, kas pazīstama kā atkritumu savācējs. Atkritumu savācēji atceras vai dzēš neatsaucamos objektus. Atkritumu savācējs atvieglo izstrādātāja/programmētāja dzīvi, jo viņiem nav jāuztraucas par atmiņas pārvaldību.

Klases ceļš: Kā norāda nosaukums, klases ceļš ir ceļš, pa kuru Java kompilators un Java izpildlaiks meklē .class failu, lai ielādētu. Daudzas iebūvētās bibliotēkas nodrošina JDK. Tomēr, ja kāds vēlas izmantot ārējās bibliotēkas, tas jāpievieno klases ceļam.

Java galvenās iezīmes

Neatkarīga no platformas: Tā vietā, lai tieši ģenerētu .exe failu, Java kompilators pārvērš Java kodu baitu kodā, un šo baita kodu var bez problēmām izpildīt dažādās platformās, kas padara Java par platformas neatkarīgu valodu. Ņemiet vērā, ka, lai izpildītu baita kodu, JVM ir jāinstalē sistēmā, kas ir atkarīga no platformas.

Objektorientētā programmēšanas valoda: Objektorientētās programmēšanas jēdziens ir balstīts uz objektu un klašu jēdzienu. Objektorientētajā programmēšanā ir arī vairākas īpašības. Daži no tiem ir minēti tālāk.

  • Abstrakcija
  • Mantojums
  • Polimorfisms
  • Iekapsulēšana

Java valoda arī plaši izmanto klašu un objektu jēdzienus. Visas šīs iepriekš minētās funkcijas ir arī Java, kas padara Java par objektorientētu programmēšanas valodu. Ņemiet vērā, ka Java ir objektorientēta programmēšanas valoda, bet ne 100% objektorientēta.

Vienkārši: Java tiek uzskatīta par vienkāršu valodu, jo tai nav norādes, vairāku mantojumu, skaidras atmiņas piešķiršanas vai operatora pārslodzes jēdziena.

Izturīgs:

Java valoda ir ļoti spēcīga. Robusta nozīme ir uzticama. Java valoda ir izstrādāta tā, lai pēc iespējas agrāk tiktu veikta liela kļūdu pārbaude. Šī iemesla dēļ šī valoda var identificēt tās kļūdas, kuras ir grūti identificēt citās programmēšanas valodās. Izņēmumu apstrāde, atkritumu savākšana un atmiņas piešķiršana ir līdzekļi, kas padara Java stabilu.

Droši: Ir vairākas kļūdas, piemēram, bufera pārpilde vai steka bojājumi, kuras nav iespējams izmantot Java valodā. Mēs zinām, ka Java valodai nav norādes. Tāpēc nav iespējams piekļūt ārējiem masīviem. Ja kāds mēģina to darīt, tiek izvirzīts ArrayIndexOutofBound Exception. Arī Java programmu izpilde notiek vidē, kas ir pilnībā neatkarīga no operētājsistēmas, kas padara šo valodu vēl drošāku.

Izplatīts: Izplatītās lietojumprogrammas var izveidot ar Java valodas palīdzību. Uzņēmuma Java pupiņas un Remote Method Invocation tiek izmantotas izplatīto lietojumprogrammu izveidei. Java programmu izplatīšana var notikt viegli starp vienu vai vairākām sistēmām, kas ir savienotas viena ar otru, izmantojot internetu.

Daudzpavedienu veidošana: Java valoda atbalsta daudzpavedienu izmantošanu. Daudzpavedienu funkcija atbalsta divu vai vairāku programmas daļu vienlaicīgu izpildi. Tādējādi tiek maksimāli palielināta CPU izmantošana.

Pārnesamība: Mēs zinām, ka Java ir no platformas neatkarīga valoda. Tādējādi vienā sistēmā ģenerēto baitu kodu var veikt izpildei jebkurā citā platformā, kas padara Java pārnēsājamu.

Augsta līmeņa veiktspēja: Java arhitektūra ir izveidota tādā veidā, ka tā samazina izpildlaika izmaksas. Dažās vietās Java izmanto JIT (Just In Time) kompilatoru, kad kods tiek kompilēts pēc pieprasījuma, kur kompilators apkopo tikai tās metodes, kuras tiek izsauktas, tādējādi panākot ātrāku lietojumprogrammu izpildi.

Dinamiskā elastība: Java valoda seko objektorientētās programmēšanas paradigmai, kas dod mums brīvību esošajām klasēm pievienot jaunas metodes un klases. Java valoda atbalsta arī funkcijas, kas minētas C/C++ valodās un parasti tiek sauktas par vietējām metodēm.

Smilšu kastes izpilde: Ir zināms, ka Java programmas tiek izpildītas dažādās vidēs, kas lietotājiem dod brīvību izpildīt savas lietojumprogrammas, neietekmējot pamatā esošo sistēmu, izmantojot baitkoda verificētāju. Baitkoda verificētājs arī nodrošina papildu drošību, pārbaudot kodu, vai nav pārkāpta piekļuve.

Uzrakstiet vienreiz palaist jebkur: Java kodu apkopo kompilators, lai iegūtu .class failu vai baita kodu, kas ir pilnībā neatkarīgs no jebkuras mašīnas arhitektūras.

Sastādītā un tulkotā valoda: Lielākā daļa valodu ir vai nu tulkotā valoda, vai apkopotā valoda. Tomēr Java valodas gadījumā tā tiek kompilēta, kā arī tulkotā valoda. Java kods tiek apkopots, lai iegūtu baitkodu, un baitkodu interpretē programmatūras tulks.

Dažas programmas Java

Tālāk ir minētas dažas pamata Java programmas.

Programma - 1

Faila nosaukums: DemoClass.java

 // Importing different classes import java.io.*; // Main class public class DemoClass { // main method public static void main(String argvs[]) { System.out.println('Welcome to javaTpoint.'); } } 

Izvade:

 Welcome to javaTpoint. 

Programma - 2

Faila nosaukums: AddMul.java

 // Computing the sum and product of the two numbers public class AddMul { // main method public static void main(String argvs[]) { int a1; int a2; int add = 0; int prod = 0; a1 = 12; a2 = 14; add = a1 + a2; // addition prod = a1 * a2; // multiplication System.out.println('Sum = ' + add); System.out.println('Product = ' + prod); } } 

Izvade:

 Sum = 26 Product = 168 

Programma - 3

Faila nosaukums: ComputeAv.java

 // A Java program to allow the user to input two numbers from the user and compute its average. import java.util.*; public class ComputeAv { // main method public static void main(String argvs[]) { double a1; double b1; double sum1 = 0; double avg1 = 0; Scanner scnr = new Scanner(System.in); System.out.println('Input the First Number: '); a1 = scnr.nextDouble(); System.out.println('Input the Second Number: '); b1 = scnr.nextDouble(); sum1 = a1 + b1; // computing the sum avg1 = sum1 / 2; // computing the average System.out.println('Average = ' + avg1); } } 

Izvade:

 Input the First Number: 4 Input the Second Number: 5 Average = 4.5 

Programma - 4

Faila nosaukums: FahrenheitCelsius.java

 // A Java program that converts Celsius to Fahrenheit using formula // Fahrenheit = ((Celsius / 5) x 9 ) + 32 // import statement for taking input import java.util.Scanner; public class FahrenheitCelsius { // main method public static void main(String argvs[]) { double cel, far; Scanner scnr = new Scanner(System.in); System.out.println('Input the temperature in Celsius: '); cel = scnr.nextDouble(); far = ((cel / 5.0) * 9.0) + 32; System.out.println('Temperature in Fahrenheit is: ' + far); } } 

Izvade:

 Input the temperature in Celsius: 15 Temperature in Fahrenheit is: 59.0 

Programma - 5

Faila nosaukums: TriangleArea.java

 // A Java program for computing the triangle's area using its three sides // using heron's formula. import java.util.Scanner; public class TriangleArea { // main method public static void main(String[] argvs) { int s1, s2, s3; double halfPeri, ar; Scanner scnr = new Scanner(System.in); System.out.print('Enter the value of triangle's three sides:'); // taking user inputs s1 = scnr.nextInt(); s2 = scnr.nextInt(); s3 = scnr.nextInt(); // computing half perimeter halfPeri = (s1 + s2 + s3) / 2; // computing area of the triangle ar = Math.sqrt(halfPeri * (halfPeri - s1) * (halfPeri - s2) * (halfPeri - s3)); System.err.println('Triangles Area: ' + ar); } } 

Izvade:

 Enter the value of triangle's three sides: 15 16 17 Triangles Area: 109.98181667894016 

Iepriekš minētajās programmās izmantoto dažādu atslēgvārdu apraksts

//: To izmanto, lai kodā ievietotu komentārus, lai padarītu to lasāmāku lasītājiem. Kompilators programmas kompilēšanas laikā komentārus pilnībā ignorē. Vairāku rindiņu komentāram mēs izmantojam: /* … */

galvenā() metode: Programmas vissvarīgākā metode, kurā sākas izpilde. Tāpēc visai loģikai ir jāatrodas galvenajā metodē. Ja main() metode nesatur loģiku, tad tā būs citā metodē, bet šī metode ir jāizsauc no main() metodes tieši vai netieši.

klase: Klases atslēgvārds tiek izmantots klases deklarēšanai Java valodā.

spēkā neesošs: tas nozīmē, ka funkcija vai metode neko neatgriezīs.

System.out.println(): To izmanto, lai konsolē drukātu paziņojumus, modeļus utt.

konvertēt virknes datumu

Virkne argvs[]: Tas ir komandrindas arguments, ko izmanto ievades saņemšanai.

publiski: Tas ir piekļuves specifikācijas atslēgvārds. Ja tā tiek piemērota metodei, tā ir redzama visiem. Citi piekļuves specifikācijas atslēgvārdi ir privāti, aizsargāti un noklusējuma atslēgvārdi.

importēt java.io.*: Tas nozīmē, ka visas komplektā esošās klases java.io ir importēts. Java.io pakotne atvieglo izvades un ievades straumes datu ierakstīšanai un lasīšanai failos. * nozīmē visu. Ja vēlaties importēt tikai noteiktu klasi, aizstājiet * ar klases nosaukumu.

System.in: Tā ir ievades straume, kas tiek izmantota, lai nolasītu rakstzīmes no ievades ierīces, kas mūsu gadījumā parasti ir tastatūra.

static void main (): Statiskais atslēgvārds norāda, ka metodei var piekļūt, neveicot klases instantiāciju.

System.out: Tā kā System.in tiek izmantots rakstzīmju lasīšanai, System.out tiek izmantots, lai parādītu programmas rezultātu izvades ierīcē, piemēram, datora ekrānā.

dubultā, int: Dažādi datu tipi — int veseliem skaitļiem, double — double. Citi datu veidi ir char, Boolean, float utt.

println(): Metode parāda tekstus konsolē. Metode izdrukā tekstu uz ekrāna un pēc tam pāriet uz nākamo rindiņu. Nākamajai rindai tiek izmantots ln. Ja mēs nevēlamies, lai kursors pārvietotos uz nākamo rindu, izmantojiet metodi print().