O selecție de cărți pentru programatori Java cu diverse experiențe. Programarea de la zero: de unde să începem? Cum să înveți programarea de la zero în Java

De la autor: Acest limbaj de programare alimentează aproximativ 3 miliarde de smartphone-uri, 125 de milioane de televizoare și fiecare player Blu-Ray din lume. Acest limbaj primește în mod regulat premii în evaluările dezvoltatorilor de software și este cel mai popular printre cele mai mari companii IT. Este un fenomen tehnic și funcționează pe absolut orice dispozitiv, ceea ce corespunde principiului său „write once, run anywhere” (WORA - „write once, run anywhere”). Cine a ghicit, ridicați mâinile! Desigur, acesta este limbajul Java. Și astăzi vă voi dezvălui toate cărțile mele și vă voi spune întregul adevăr despre cum să deveniți un programator Java de la zero! Simte-te ca acasa!

Câteva fapte despre Java

Pentru a nu vă plictisi cu predici teoretice lungi, am grupat câteva informații despre Java într-o listă, după ce veți avea o înțelegere lămurită despre ce fel de limbaj este și care este rolul său în natura sălbatică a programării:

Java este un limbaj de programare „la modă” și multiplatformă. Funcționează pe orice dispozitiv cu orice sistem de operare. Toate aplicațiile Google și Android sunt scrise pe el. Nu veți găsi atât de multe informații și materiale de instruire pentru nicio altă limbă;

Data oficială de lansare a limbii este 23 mai 1995. A fost concepută inițial pentru televiziunea interactivă prin cablu, dar „nu a funcționat”. Inventatorul Java este Sun Microsystems, care a fost achiziționat de Oracle în 2010;

Mulți oameni confundă Java și JavaScript. Dacă doriți să faceți ceva (site-uri web, aplicații web), atunci alegeți a doua opțiune. Java este back-end, adică dezvoltarea umplerii aplicațiilor;

este un limbaj de programare orientat pe obiecte al cărui cod este executat de o mașină virtuală Java specială (JVM). În SUA, aproximativ 9 din 10 computere au același JVM instalat;

Limba își trage numele de la o marcă de cafea - motiv pentru care emblema oficială prezintă o ceașcă inspirată.

Mai ești aici sau ai alergat să-ți faci o ceașcă de cafea aromată? Apoi, să continuăm conversația despre cum să devii programator Java.

Instalarea mediului software

Destul de ciudat, unii oameni au probleme deja în etapa de instalare a mediului software Java. Pentru a face acest lucru, trebuie să accesați site-ul web oficial al companiei de dezvoltare - Oracle. Veți vedea un link către versiunea curentă în partea de sus a site-ului. Aveți nevoie de Java SE (Standard Edition) și Java Development Kit - un set de instrumente de dezvoltare. Vă rugăm să rețineți că există distribuții diferite pentru diferite sisteme de operare.

Să presupunem că avem Windows. Mergem la „Proprietăți sistem” și vedem ce fel de sistem avem - 32 de biți sau 64 de biți. Descărcăm fișierul care ni se potrivește în ceea ce privește adâncimea de biți. Dacă alegeți o distribuție greșită, veți primi o eroare la compilarea codului. După ce confirmați Acceptarea acordului de licență, faceți clic pe butonul de descărcare.

Ce este Java Developer Toolkit?

Programatorul își petrece cea mai mare parte a timpului în IDE (IntelliJ IDEA, Eclipse, WebStorm, NetBeans). IDE este un mediu de dezvoltare integrat, o interfață specială pentru programare. Nu numai că vă ajută să scrieți cod, dar vă ușurează și utilizarea altor instrumente de programare. Unii îi sfătuiesc pe cei care doresc să devină programator Java de la zero să scrie primele lor programe într-un notepad obișnuit sau Notepad++.

Poate că programele elementare ar trebui scrise într-un editor. Dar pe viitor recomand cu tărie folosirea IDE-ului. Are funcții pentru completarea codului, controlul sintaxei, trecerea la definirea metodei și multe altele. Și sugestiile inteligente vă vor scuti de a fi nevoit să vă amintiți toate numele funcțiilor și parametrii acestora, ceea ce este pur și simplu imposibil din punct de vedere fizic.

Când lucrați în echipă, când mai multe persoane lucrează la un singur program deodată, este necesar să folosiți așa-numitul sistem de control al versiunilor (Perforce, Git, Subversion etc.). Cu toate acestea, sistemele de control al versiunilor sunt foarte convenabile atunci când lucrați singur.

Algoritm aproximativ pentru învățarea Java

Învățarea elementelor de bază ale limbajului Java. Primul pas este să vă dezvoltați abilitățile de gândire logică și să învățați conceptele fundamentale ale sintaxei limbajului de programare. Înarmat cu o carte, un articol sau un tutorial video, învață cum să folosești un IDE sau un editor de text pentru a crea obiecte Java simple care implementează diferite comportamente bazate pe datele de intrare.

Analiza caracteristicilor avansate ale limbajului Java. În această etapă, aflați sintaxa, bibliotecile și cadrele care vă vor fi utile atunci când creați aplicații mai complexe cu un accent practic. Un programator bun nu numai că știe să folosească diverse biblioteci, dar știe și cum funcționează în interior. În plus, concepte precum operațiuni de intrare/ieșire, moștenire și abstracții, serializare, tipuri generice, expresii regulate nu ar trebui să fie o frază goală pentru tine.

Tendințe și abordări moderne în dezvoltarea web

Aflați algoritmul pentru creșterea rapidă de la zero în construirea site-ului web

Subtilitățile programării. Nu ezitați să studiați cu atenție documentația și jargonul programării Java. În această etapă, ar trebui să fiți deja „mutați” într-un programator matur. Discutați cu guru Java, pe care îi veți găsi în forumuri tematice și în alte medii în care se adună programatori. Arată-le codul tău, consultați și sfătuiți-i pe alții - „acumulați karma”. Poți chiar să-ți pornești propriul blog, să postezi fragmente din propriul tău cod pe el și să vezi ce au de spus programatorii mai experimentați despre el.

Cum să începem programarea?

Pentru cei care plănuiesc să devină programator Java de la zero, vă voi spune cum să vă scrieți primul program.
Deci, deschideți orice editor de text și scrieți:

clasa HelloWorld ( public static void main(String args) ( System.out.println("Bună ziua!"); ) )

clasa HelloWorld(

public static void main (Argumente șir) (

Sistem. afară . println("Bună lume!");

Salvați fișierul sub numele HelloWorld.java. Vă rugăm să rețineți că Java face distincție între majuscule și minuscule, deci cuvintele „helloworld” și „HelloWorld” sunt diferite. Dacă numele fișierelor și claselor din cod sunt diferite, programul pur și simplu nu va porni. În plus, este important ca codificarea să fie ANSI.

Acum trebuie să compilam programul folosind compilatorul javac din JDK. Deși nu am instalat mediul de dezvoltare, vom compila folosind linia de comandă cmd, apelând-o din meniul Start. În fereastra care apare, tastați cmd și apăsați Enter.

Dacă am salvat HelloWorld.java în folderul Prog de pe unitatea C, atunci introduceți comanda:

cd C:\Prog a

și apăsați Enter. Așa că am schimbat directorul în cel în care se află programul nostru. Apoi intram.

Un fișier sursă Java este un fișier text care conține una sau mai multe definiții de clasă. Traducătorul Java presupune

că codul sursă al programelor este stocat în fișiere cu extensii Java. Codul obținut în timpul procesului de traducere pentru fiecare clasă este scris într-un fișier de ieșire separat, cu un nume care se potrivește cu numele clasei și cu clasa de extensie.

În primul rând, în acest capitol vom scrie, difuza și rula programul canonic „Hello World”. După aceea, ne vom uita la toate elementele lexicale esențiale înțelese de traducătorul Java: spații albe, comentarii, cuvinte cheie, identificatori, literali, operatori și delimitatori. Până la sfârșitul capitolului, veți avea suficiente informații pentru a naviga pe cont propriu într-un program Java bun.

Deci, iată primul tău program Java

:

clasa HelloWorld(

Sistem. afară. println("Bună lume");

Pentru a lucra cu exemplele date în carte, trebuie să obțineți și să instalați Java Developers Kit prin rețea de la Sun Microsystems - un pachet pentru dezvoltarea aplicațiilor Java (

http://java.sun.com/products/jdk ). Descrierea completă a utilităților pachetului JDK - în Anexa 1 .

Limbajul Java necesită ca tot codul programului să fie conținut în clasele numite. Exemplul de text de mai sus ar trebui să fie scris în fișierul HelloWorld.java. Asigurați-vă că verificați dacă majusculele din numele fișierului se potrivesc cu cele din numele clasei pe care o conține. Pentru a traduce acest exemplu, trebuie să rulați traducătorul Java - javac, specificând numele fișierului cu textul sursă ca parametru:

\> javac HelloWorld.Java

Traducătorul va crea un fișier HelloWorld.class cu bytecode independent de procesor din exemplul nostru. Pentru a executa codul rezultat, trebuie să aveți un mediu de rulare Java (în cazul nostru, acesta este programul java), în care trebuie să încărcați o nouă clasă pentru execuție. Subliniem că este indicat numele clasei, și nu numele fișierului în care este conținută această clasă.

>java HelloWorld

Nu s-au făcut prea multe lucrări utile, dar am verificat că traducătorul Java instalat și mediul de rulare funcționează.

Pas cu pas

HelloWorld este un exemplu banal. Cu toate acestea, chiar și un program atât de simplu pentru un începător în limbăJava poate părea intimidant de complex, deoarece vă prezintă o mulțime de concepte noi și detalii ale sintaxei limbajului. Să aruncăm o privire mai atentă la fiecare rând din primul nostru exemplu, analizând elementele care alcătuiesc un program Java.

clasa HelloWorld(

Această linie folosește un cuvânt rezervat

clasă. Îi spune traducătorului că vom defini o nouă clasă.Definiția completă a clasei apare între acolada de deschidere de pe linia 1 și acolada de închidere care se potrivește pe linia 5. Acoladele dinJava este folosit exact în același mod ca în limbajele C și C++.

public static void main (Argumente șir) (

Acest șir de exemplu aparent prea complex este o consecință a unei cerințe importante atunci când a fost proiectat limbajul Java. Ideea este că în

Java nu are funcții globale. Deoarece linii similare vor apărea în majoritatea exemplelor din prima parte a cărții, să aruncăm o privire mai atentă la fiecare element din a doua linie.

Împărțind acest șir în jetoane separate, întâlnim imediat cuvântul cheie

public Acest - modificator de acces, care permite programatorului să controleze vizibilitatea oricărei metode și a oricărei variabile. În acest caz, modificatorul de accespublic înseamnă metodamain este vizibilă și accesibilă oricărei clase. Mai sunt 2 indicatori de nivel de acces - privat și protejat, pe care îl vom cunoaște mai detaliat încapitolul 8 .

Următorul cuvânt cheie este

static. Acest cuvânt este folosit pentru a declara metodele de clasă și variabilele utilizate pentru a lucra cu clasa ca întreg. Metodele care folosesc cuvântul cheie static în declarația lor pot funcționa direct doar cu variabilele locale și statice.

Veți avea nevoie adesea de metode care returnează o valoare de un tip sau altul: de exemplu,

int pentru valori întregi, float - pentru cele reale sau numele clasei pentru tipurile de date definite de programator. În cazul nostru, trebuie doar să afișăm un șir și să returnăm valoarea din metodăprincipal nu este necesar. De aceea a fost folosit modificatorulvid. Această problemă este discutată mai detaliat încapitolul 4 .

În cele din urmă ajungem la numele metodei

principal. Nu este nimic neobișnuit aici, doar că toate implementările existente ale interpreților Java, după ce au primit comanda de a interpreta o clasă, își încep munca apelând metoda principal. Un traducător Java poate traduce o clasă care nu are o metodă principală. Dar interpretul Java rulează clase fără o metodă principal nu poate.

Toți parametrii care trebuie să fie trecuți metodei sunt specificați în interiorul unei perechi de paranteze ca o listă de elemente separate prin caractere „;”. (punct şi virgulă). Fiecare element al listei de parametri constă dintr-un tip și un identificator separate printr-un spațiu. Chiar dacă o metodă nu are parametri, tot trebuie să puneți o pereche de paranteze după numele ei. În exemplul pe care îl discutăm acum, metoda

main are un singur parametru, deși de tip destul de complex.Şir args declară un parametru numitargs, care este o matrice de obiecte - reprezentanți ai claseiŞir. Notați parantezele drepte după identificatorul args. Ele indică faptul că avem de-a face cu o matrice, și nu cu un singur element de tipul specificat. Vom reveni la o discuție despre matrice în capitolul următor, dar deocamdată să remarcăm că tipulșir - aceasta este clasa. Vom vorbi despre șiruri mai detaliat înCapitolul 9 .

Sistem. afară. prlntln("Bună lume!");

Această linie execută metoda

println a obiectului out. Un obiect out este declarat în clasăOutputStream și este inițializat static în clasa System.ÎN capitolele 9Și 13 veți avea șansa de a vă familiariza cu nuanțele modului în care funcționează cursurile String și OutputStream.

Acolada de închidere de pe linia 4 încheie declarația metodei

main, iar aceeași paranteză de pe linia 5 încheie declarația clasei HelloWorld.

Bazele lexicale

Acum că ne-am uitat la clasa minimă Java în detaliu, să ne întoarcem și să ne uităm la sintaxa generală a limbajului. Programe pentru

Java - este o colecție de spații, comentarii, cuvinte cheie, identificatori, constante literale, operatori și delimitatori.un limbaj care permite formatarea arbitrară a textului programului. Pentru ca programul să funcționeze corect, nu este nevoie să-i aliniați textul într-un mod special. De exemplu, clasaHelloWorld poate fi scris în două rânduri sau în orice alt mod doriți. Și va funcționa exact la fel, cu condiția să existe cel puțin un spațiu, caracter de tabulație sau caracter de nouă linie între jetoanele individuale (între care nu există operatori sau separatori).

Comentarii

Deși comentariile nu au niciun efect asupra codului executabil al programului,

atunci când sunt utilizate corect, ele se dovedesc a fi o parte foarte semnificativă a textului sursă. Există trei tipuri de comentarii: comentarii pe o singură linie, comentarii pe mai multe rânduri și, în final, comentarii de documentare. Comentariile pe o singură linie încep cu caractere // și se termină la sfârșitul rândului. Acest stil de comentare este util pentru a oferi scurte explicații ale liniilor individuale de cod:

a = 42; // Dacă

42 - răspunsul, atunci care a fost întrebarea?

Pentru explicații mai detaliate, puteți folosi comentarii plasate pe mai multe rânduri, începând textul comentariului cu caracterele /* și terminând cu caracterele */. În acest caz, tot textul dintre aceste perechi de caractere va fi considerat un comentariu și traducătorul îl va ignora.

* Acest cod este un pic complicat...

*Voi încerca să explic:

A treia formă specială de comentarii este destinată programului de servicii

javadoccare utilizează componente Java translator pentru a genera automat documentația pentru interfețele de clasă. Convenția folosită pentru acest tip de comentariu este de a plasa un comentariu de documentare înainte de declararea unei clase, metode sau variabile publice., trebuie să începeți cu caracterele /** (slash și două asteriscuri). Un astfel de comentariu se termină la fel ca un comentariu obișnuit - cu simbolurile */. Programul javadoc poate recunoaște în comentariile documentare unele variabile speciale ale căror nume încep cu simbolul @. Iată un exemplu de astfel de comentariu:

* Această clasă poate face lucruri uimitoare. Îl recomandăm oricui

* vrea să scrie o clasă și mai avansată, ia-o ca

* de bază.

* @vedeți Java. applet. Applet

* ©autor Patrick Naughton

clasa CoolApplet extinde Applet ( /**

* Această metodă are doi parametri:

cheia este numele parametrului.este valoarea parametrului numitcheie.

*/ void put (cheie șir, valoare obiect) (

Cuvinte cheie rezervate

Cuvintele cheie rezervate sunt identificatori speciali ca limba

Java este folosit pentru a identifica tipurile încorporate, modificatorii și controalele de execuție a programelor. Astăzi în limbă J ava are 59 de cuvinte rezervate (vezi Tabelul 2). Aceste cuvinte cheie, împreună cu sintaxa operatorilor și delimitatorilor, sunt incluse în descrierea limbiiJava. Ele pot fi utilizate numai în scopul propus și nu pot fi utilizate ca identificatori pentru nume de variabile, clase sau metode.

masa 2

Cuvinte rezervate Java

Rețineți că cuvintele

byvalue, turnare, const, viitor, generic, goto, interior, operator, exterior, rest, varrezervat in Java, dar nefolosit încă.În plus, în Java există nume de metode rezervate (aceste metode sunt moștenite de fiecare clasă și nu pot fi utilizate decât în ​​cazurile de suprascrie explicită a metodelor de clasă Obiect).

Tabelul 3

Nume de metode rezervate

Java

Identificatori

Identificatorii sunt folosiți pentru a denumi clase, metode și variabile. Identificatorul poate fi orice succesiune de litere mici și mari, numere și simbolurile _ (subliniere) și $ (dolar). Identificatorii nu trebuie să înceapă cu un număr, astfel încât traducătorul să nu le confunde cu constante numerice literale, care vor fi descrise mai jos.

Java - limbaj sensibil la majuscule. Aceasta înseamnă că, de exemplu, Valoare și VALUE - diverși identificatori.

Literale

Constante în

Java sunt date de reprezentarea lor literală. Numerele întregi, virgulele, booleanele, caracterele și șirurile de caractere pot fi plasate oriunde în codul sursă. Tipurile vor fi discutate încapitolul 4 .

Literale întregi

Numerele întregi sunt tipul cel mai frecvent utilizat în programele obișnuite. Orice valoare întreagă, cum ar fi 1, 2, 3, 42, este un literal întreg. Acest exemplu prezintă numere zecimale, adică numere cu o bază de 10 - exact acelea pe care le folosim zilnic în afara lumii computerelor. Pe lângă zecimală, numerele cu baza 8 și 16 - octale și hexazecimale - pot fi, de asemenea, folosite ca literale întregi. Java recunoaște numerele octale conducându-le cu un zero înainte. Numerele zecimale normale nu pot începe cu zero, așa că utilizarea numărului 09 valid extern într-un program va avea ca rezultat un mesaj de eroare de traducere, deoarece 9 nu este în intervalul 0..

7, valabil pentru cifre octale. Constantele hexazecimale se disting prin caractere zero-x (0x sau 0X). Intervalul valorilor cifrelor hexazecimale este 0..15 și ca numere pentru valorile 10..Sunt folosite 15 litere de la A la F (sau de la a la f). Cu numerele hexazecimale puteți exprima valori ușor de calculator într-un mod concis și clar, de exemplu prin scriere Oxffff în loc de 65535.

Literale întregi sunt valori de tip

int, care este în Java este stocat într-un cuvânt de 32 de biți. Dacă aveți nevoie de o valoare mai mare de aproximativ 2 miliarde, trebuie să utilizați o constantă likelung. În acest caz, numărul va fi stocat într-un cuvânt de 64 de biți. Pentru numerele cu oricare dintre bazele menționate mai sus, puteți aloca o literă mică sau majusculă în dreaptaL, indicând astfel că numărul dat este de tipullung. De exemplu, Ox7ffffffffffffffL sau9223372036854775807L este cea mai mare valoare pentru un număr de tipuri lung.

Literale în virgulă mobilă

Numerele cu virgulă mobilă reprezintă valori zecimale care au o parte fracționară. Ele pot fi scrise fie în formate obișnuite, fie în formate exponențiale. În formatul obișnuit, un număr este format dintr-un număr de cifre zecimale, urmate de un punct zecimal și următoarele cifre zecimale ale părții fracționale. De exemplu, 2.0, 3.14159 și .6667 sunt valori valide pentru numerele în virgulă mobilă scrise în format standard. În format exponențial, după elementele enumerate, este indicată suplimentar ordinea zecimală. Ordinea este determinată de numărul zecimal pozitiv sau negativ după simbolul E sau e. Exemple de numere în format exponențial: 6.022e23, 314159E-05, 2e+100. ÎN

Java floats sunt tratate implicit ca duble. Dacă aveți nevoie de o constantă de tipfloat, simbolul F sau f trebuie adăugat la dreapta literalului. Dacă sunteți un fan al definițiilor redundante, puteți adăuga literalmente precum caracter dublu D sau d. Valori implicite de tipdouble sunt stocate într-un cuvânt de 64 de biți, valori de tip mai puțin precise float - pe 32 de biți.

Literale booleene

O variabilă booleană poate avea doar două valori -

adevărat şi fals (fals). Valori booleene adevărat şi false nu sunt convertite în nicio reprezentare numerică. Cuvânt cheie true în Java nu este egal cu 1, iar false nu este egal cu 0. În În Java, aceste valori pot fi atribuite numai variabilelor booleene sau utilizate în expresii cu operatori logici.

Litere de caractere

Simboluri în

Java - aceștia sunt indicii din tabelul cu simboluriUNICODE. Sunt valori pe 16 biți care pot fi convertite în numere întregi și cărora li se pot aplica operatori aritmetici cu numere întregi, cum ar fi adunarea și scăderea. Literele de caractere sunt plasate în interiorul unei perechi de apostrofe (" "). Toate simbolurile vizibile ale tabeluluiASCII poate fi introdus direct în interiorul unei perechi de apostrofe: -„a”, „z”, „@”. Pentru caracterele care nu pot fi introduse direct, sunt furnizate mai multe secvențe de evadare.

Tabelul 3.

2. Secvențe de evacuare

Secvență de control

Descriere

Caracter octal

(ddd)

Caracter hexazecimal

UNICODE (xxxx)

Apostrof

Backslash

Retur transport

Line feed (line feed, linie nouă)

Traducerea paginii

(aliment de formulare)

Tabulare orizontală

(fila)

Întoarce-te cu un pas

(backspace)

Literale șiruri

Literale șiruri în

Java arată exact la fel ca în multe alte limbi - este un text arbitrar închis între ghilimele duble (""). Deși literalele minuscule înJava sunt implementate într-un mod foarte unic(Java creează un obiect pentru fiecare linie), acesta nu apare extern. Exemple de literale de șir:"Buna ziua Lume!"; „două\șiruri de caractere; \Și aceasta este între ghilimele\””. Toate secvențele de escape și notațiile octale/hexazecimale care sunt definite pentru caractere literale funcționează exact la fel în șiruri. Literale șiruri înCodurile Java trebuie să înceapă și să se termine pe aceeași linie de cod sursă. În acest limbaj, spre deosebire de multe altele, nu există o secvență de escape pentru continuarea unui șir literal pe o nouă linie.

Operatori

Un operator este ceva care efectuează o acțiune pe unul sau două argumente și produce un rezultat. Sintactic, operatorii sunt cel mai adesea plasați între identificatori și literali. Operatorii vor fi discutați în detaliu în

capitolul 5 , lista acestora este dată în tabelul 3. 3.

Tabelul 3.

3. Operatori lingvistici Java

Separatoare

Doar câteva grupuri de caractere care pot apărea într-un program Java corect din punct de vedere sintactic rămân încă nenumite. Aceștia sunt delimitatori simpli care afectează aspectul și funcționalitatea codului programului.

Nume

La ce sunt folosite?

paranteze rotunde

Aceștia evidențiază liste de parametri într-o declarație și apel de metodă; sunt, de asemenea, utilizați pentru a seta prioritatea operațiilor în expresii, evidențiază expresii în instrucțiunile de control al execuției programului și în operatorii de tip casting.

bretele

paranteza patrata

Folosit în declarațiile de matrice și la accesarea elementelor individuale ale matricei.

punct şi virgulă

Separă operatorii.

Separă identificatorii din declarațiile de variabile, folosite și pentru a lega instrucțiunile dintr-un antet de buclă

pentru.

Separă numele pachetelor de numele subpachetelor și ale claselor și este, de asemenea, folosit pentru a separa o variabilă sau un nume de metodă de un nume de variabilă.

Variabile

O variabilă este elementul principal de stocare a informațiilor într-un program Java. O variabilă este caracterizată printr-o combinație de identificator, tip și domeniu. În funcție de locul în care declarați variabila, aceasta poate fi locală, cum ar fi codul din interiorul unei bucle for, sau poate fi o variabilă de instanță a clasei care este accesibilă tuturor metodelor din acea clasă. Domeniile locale sunt declarate folosind acolade.

Declarație variabilă

Forma de bază a unei declarații variabile este:

identificator de tip [ = valoare] [, identificator [ = valoare

7...];

Un tip este unul dintre tipurile încorporate, adică

octet, scurt, int, lung, char, float, dublu,boolean sau numele unei clase sau al unei interfețe. Vom discuta în detaliu toate aceste tipuri înCapitolul următor . Mai jos sunt câteva exemple de declarare a variabilelor de diferite tipuri. Rețineți că unele exemple implică inițializarea unei valori inițiale. Variabilele pentru care nu sunt specificate valori inițiale sunt inițializate automat la zero.

Exemplul de mai jos creează trei variabile corespunzătoare laturilor unui triunghi dreptunghic și apoi

c Folosind teorema lui Pitagora se calculează lungimea ipotenuzei, în acest caz numărul 5, mărimea ipotenuzei unui triunghi dreptunghic clasic cu laturile 3-4-5.

Variabile de clasă(

public static void main (Argumente șir) (

= Math.sqrt(a* a + b* b);

System.out.println("c = "+ c);

Primul tău pas

Am realizat deja multe: mai întâi am scris un mic program în limbă

Java și a analizat în detaliu în ce constă (blocuri de cod, comentarii). Ni s-a prezentat o listă de cuvinte cheie și operatori al căror scop va fi explicat în detaliu în capitolele următoare. Acum puteți distinge în mod independent părțile principale ale oricărui program Java și sunteți gata să începeți să citițicapitolul 4 , care acoperă în detaliu tipuri simple de date.
  • 2 luni de antrenament Java EE (de 2 ori pe săptămână timp de 4 ore)
  • daca dai rezultate bune (ti aperi cu succes proiectul pe care il scrii de aceste doua luni), atunci ti se ofera un loc de munca.
Firma este foarte bună, străină, cunoscută, iar condițiile de muncă sunt excelente – pe scurt, mi-am dorit mult mai mult să merg acolo decât locul unde mi-au făcut deja o ofertă. Selecția pentru antrenament cu ea a implicat 3 etape:
  1. Efectuarea sarcinilor practice acasă.
  2. Dacă aveți succes, sunteți invitat la testarea computerului la birou.
  3. Dacă testul are succes, veți fi intervievat în aceeași zi.
Am finalizat sarcinile practice fără probleme - multe mulțumiri JavaRush și problemelor lor, după care aceste sarcini mi s-au părut destul de simple. Au fost 3 sarcini: pe RegExp (Google m-a ajutat, pentru că eu însumi nu le suportam și nu-mi aminteam), pe algoritmi (destul de simplu, mai mult un exercițiu mental) și pe scriere/citire dintr-un fișier (există un multe dintre acestea în cursul JavaRush). Am fost invitat la testarea calculatorului. M-am pregătit pentru testare folosind site-ul web chestionar. Aceste teste au ajutat foarte mult, unele întrebări chiar au ajuns să se intersecteze. Am trecut testul cu succes și au început să mă intervieveze. Probabil că nu voi uita niciodată acest interviu în viața mea. Tot ceea ce persoana care ma intervieva a vrut să audă de la mine a fost bazele teoriei Java, cum ar fi:
  • care este diferența dintre excepțiile verificate și cele neverificate;
  • ce metode are clasa Object și de ce sunt necesare;
  • ce tipuri de colecții există și de ce sunt acolo;
  • și puțin despre multithreading.
JavaRush este un curs excelent, vă va învăța cum să rezolvați probleme și să programați, dar teoria (pentru interviuri) trebuie învățată separat, așa cum m-am convins înotând în aceste probleme ca un pește într-un acvariu. Au vrut să mă învelească. Îl înțeleg - nu am putut răspunde clar la aproape nimic, am încercat să spun totul din punctul de vedere al scrierii codului, dar el era interesat de teorie. Dar știam sigur că îmi doresc foarte mult să intru în acest stagiu și știam că, dacă îmi acordă timp, voi ajunge din urmă la toate acestea și voi învăța nefericita teorie. I-am spus toate acestea și m-a întâlnit la jumătate - s-a oferit să ne reîntâlnesc peste o săptămână, dar deocamdată mi-a dat o listă de subiecte (aproximativ așa cum am descris mai sus) și a spus unde pot fi învățate - doar un tutorial Oracle , conține tot: http://docs.oracle.com/javase/tutorial/ În decurs de o săptămână, am studiat temeinic acest tutorial și am fost la un al doilea interviu cu o zi înainte de a fi așteptat la un nou loc de muncă. Aparent, cel care m-a intervievat a fost cel mai impresionat de simțul meu de scop (știam că dacă acceptam acest stagiu, ceea ce s-a întâmplat în continuare depindea doar de mine - în două luni mi-aș fi dat seama tot ce aveam nevoie). Oricum ar fi, am acceptat acest stagiu și am refuzat să merg la muncă la locul unde mi s-a oferit anterior. Pe parcursul a 2 luni, ni s-au prezentat multe subiecte din Java EE, cum ar fi: Servlets, JSP, Hibernate JSF, Spring și multe, multe altele - ca urmare a stagiului, ne-am familiarizat (aveam o idee aproximativă ) despre stiva principală de tehnologii Java EE. De asemenea, pe parcursul stagiului, am scris propriul proiect, care la final a trebuit să fie prezentat cu succes la angajare. Îmi amintesc doar primele mele sentimente când am fost la prima prelegere. M-am uitat la sarcina pentru acest proiect (a fost dată imediat la prima prelegere) și nici nu am înțeles de unde să încep și cum să o fac. Îmi amintesc, de asemenea, ce mi-a trebuit să o fac cu succes. Aceste două luni, aproape toate gândurile din capul meu au fost că angajarea de succes și împlinirea unui vis erau în mâinile mele și nimic mai mult. Nu depindea de altcineva dacă aș putea să o fac. Doar de la mine. Îmi părăsisem deja slujba, aproape că nu aveam bani și a fost foarte greu. Am stat dimineața, am stat ziua, am stat seara, dar nu m-am săturat să mă bucur - nu-mi amintesc când m-am dedicat ceva cu o asemenea obsesie. De data aceasta m-a ajutat încă o dată să realizez cât de mult îmi place programarea și cât de mult mi-ar plăcea să lucrez în acest domeniu. La absolvire mi-am prezentat proiectul. L-am apărat foarte bine, aparent mult mai bine decât mă așteptam și, prin excepție, am fost angajat nu pentru postul inițial, ci imediat pentru postul de Middle Java Developer. Era 9 decembrie 2014. Nu-mi venea să cred, dar oferta de muncă era în fața mea pe monitor. Inginer de software. Asta s-a intamplat. M-am întors la muncă pe 15 decembrie. Niciodată nu am avut gândul „La naiba, nu vreau să merg la muncă”. În fiecare zi, plecând de acasă dimineața, știu de ce mă duc la muncă, ce voi face și cât de mult îmi doresc. Acest lucru mă face incredibil de fericit. Merită și a meritat prețul pe care a trebuit să-l plătiți pentru a vă îndeplini visul. Vă doresc tuturor celor care doriți să fiți programator să mergeți mai departe în atingerea obiectivului dvs. Este mai mult decât real, este foarte aproape, dar trebuie să plătești pentru asta. Plătește cu timpul pierdut și cu nervii tăi, pentru că să înveți ceva de la zero nu este într-adevăr cel mai ușor pas. JavaRush m-a ajutat să fac acești primi pași cu ușurință și nu eu am fost cel care s-a îndepărtat de la programare chiar la început din cauza complexității aparente și a abundenței teoriei. Astfel, am reușit să duc la bun sfârșit ideea mea destul de nebună de schimbare radicală în domeniul activității profesionale (chiar și în absența educației tehnice). Și cu siguranță poți.

Potrivit portalului HeadHunter, cererea de dezvoltatori Java a crescut cu 38% în 2016. Și aceasta nu este limita. Numai piața aplicațiilor mobile se va dubla până în 2020: veniturile anuale brute vor depăși 100 de miliarde de dolari, prevăd analiștii App Annie.
Vrei să faci parte din comunitatea Java și să influențezi cum va fi software-ul pentru smartphone-uri și PC-uri în următorii 5 ani? Începe-ți călătoria profesională acum. Am adunat cele mai importante lucruri de care veți avea nevoie în prima etapă a intensivului de programare Java pentru începători.

Cum să înveți Java de la zero?

Gratuit

A plăti pentru o cunoștință este greșit. GeekBrains nu percepe bani pentru asta. De aceea, cursurile noastre introductive de Java online sunt gratuite.

De la distanță

Oriunde te-ai afla, cunoștințele sunt în apropiere. Pentru a învăța Java online, tot ce aveți nevoie este un computer/smartphone cu acces la internet și o minte flexibilă. În timpul orelor, veți putea să puneți întrebări profesorului și să discutați cu colegii de clasă.

Pentru cine este potrivit cursul intensiv „Fundamentals of Java Programming”?

Pentru Dummies

Cursul intensiv va fi util dacă tocmai vă familiarizați cu programarea și sunteți în căutarea unui curs de pregătire Java „pentru manechin”.

Pentru școlari

Materialul este prezentat clar, cu exemple. În câteva ore, veți vedea principalele caracteristici și caracteristici ale limbii. Pentru școlari, învățarea Java pe GeekBrains este un început rapid în industria jocurilor de noroc. Deja în prima lecție veți crea un joc pe care vă veți bucura să îl împărtășiți cu prietenii și pe Internet.

Pentru toti

Începeți să învățați programarea Java de la zero pentru a înțelege dacă vă place limbajul și dacă sunteți pregătit să vă implicați profesional în dezvoltarea Java.

Programez în Java de 7 ani acum. Dar la locul de muncă trebuie adesea să pregătim o nouă generație. În acest sens, am decis să fac niște cheat sheet, care, sper, vor fi de folos locuitorilor Khabr. Dacă cineva poate ajuta la completarea informațiilor din acest articol cu ​​ceva, atunci scrieți! Asa de:

Resurse esentiale pentru formarea initiala

  • www.javable.com - un site cu articole și tutoriale despre Java.Totul este în mare parte în rusă.
  • www.exampledepot.com - o resursă foarte utilă în care sunt colectate exemple scurte de utilizare a claselor pentru diverse pachete
  • java.sun.com - nu vă puteți lipsi de sursa originală. Pentru orice programator Java, JavaDoc ar trebui să fie adevărul suprem. De asemenea, puteți găsi aici o serie de tutoriale pe toate subiectele posibile.

Pachete Java de bază

Mai jos este o listă de pachete Java cu care un programator ar trebui să fie confortabil. Este recomandat să vă familiarizați cu ele atât prin JavaDocs, cât și folosind www.exampledepot.com Toate pachetele sunt aranjate în ordinea recomandată pentru studiu. Deci:
  1. java.lang este elementele de bază. Fiecare clasă din acest pachet necesită o atenție individuală.
  2. java.io - niciun program nu poate face fără operațiuni I/O.
  3. java.util - pachetul conține practic tot ce este necesar pentru a lucra cu colecții: Colecție, Enumerare, Set, Listă, Hartă etc. și așa mai departe.
  4. java.net - conține clasele principale pentru lucrul cu rețeaua.
  5. java.text - tot ce aveți nevoie pentru a formata text
  6. java.lang.reflect - Java nu ar fi Java dacă nu ar fi Reflection. Reflection estompează linia dintre date și cod.
  7. javax.sql - tot ce aveți nevoie pentru a lucra cu baze de date
  8. javax.xml.* , org.w3c.dom.* , org.xml.sax.* - fără aceste pachete, lucrul cu XML este pur și simplu de neconceput

Resurse pentru a vă lărgi orizonturile

  • onjava.com - mai devreme sau mai târziu toate știrile din lumea Java ajung aici
  • www.javaspecialists.eu - resursa este utilă atât pentru începători, cât și pentru programatori avansați, deoarece conține multe articole despre complexitatea lucrului cu Java.
  • www.theserverside.com - este recomandat să vă abonați la RSS, deoarece adesea apar lucruri foarte interesante despre Java.

Biblioteci Java pe care toată lumea ar trebui să le știe

Java nu se termină doar cu a ști ce poate face JSDK. Pentru a vă simți confortabil, trebuie să știți despre încă o duzină de biblioteci terțe utilizate de programatorii Java de pretutindeni. Deci, să începem cu cele principale:
  • Commons Lang - ceea ce au „uitat” să includă în JDK
  • Commons Math este un program de completare excelent pentru java.math
  • Commons Logging - înregistrarea trebuie să fie competentă. Pentru ca System.out.println să scoată jurnalele, programatorii începători ar trebui să-și taie mâinile după doar o săptămână de antrenament.
  • Serghei Savenkov

    un fel de recenzie „scurtă”... de parcă s-ar grăbi undeva