Bine te-am gasit! Acest tutorial de programare in Java este despre clase si despre programarea orientata pe obiecte. Vom incepe direct, fara a mai face o introducere elaborata. Asa ca porneste Eclipse! 🙂

Dupa ce ai deschis Eclipse, creeaza un proiect ce se va numi ClaseInJava. Apoi creeaza o clasa ce se va numi ClasaPrincipala:

public class ClasaPrincipala {

}

Creeaza main-ul. Asa trebuie sa arate:

public class ClasaPrincipala{

public static void main(String)[] args) {

}

}

Vom ramane aici pentru cateva momente, pentru ca vreau sa iti spun mai multe lucruri. In primul rand, ce este o clasa? O clasa este un tip de date definit de catre un utilizator. Scopul unei clase este sa ne ajute sa grupam si sa ne eficientizam mai mult munca. Cu ajutorul unei clase vom face lucrurile mult mai bine si intr-un mod mult mai structurat.

Sunt clase care exista deja in Java si in alte limbaje de programare similare cu Java, cum ar fi C++ si altele. In toate aceste limbaje exista deja anumite functii, anumite grupari, anumite clase care au scopul de a ne ajuta pe noi sa ne eficientizam munca. Ce rost are avea un limbaj de programare fara functiile definite de catre o comunitate, de catre persoanele care au dezvoltat acel limbaj?

Fiecare limbaj are specificul lui si ne ajuta sa ne facem munca mult mai eficient, in anumite arii. Spre exemplu, cand facem programare in Java, e mai usor sa facem aplicatii pentru telefoane sau pentru servere. Cand facem programare in PHP, va fi mult mai usor sa ne ocupam de partea de web pentru ca acest limbaj a fost optimizat si gandit pentru asa ceva.

Programarea in C ne va ajuta sa facem lucruri care tin de sistemul de operare sau de programarea placutelor pentru ca acest limbaj este foarte rapid si asa a fost conceput. O sa vezi ca fiecare limbaj de programare are specificul lui. Dupa cum poate iti mai aduci aminte de la matematica (nu ca ar trebui sa fii expert in matematica, dar bazele din scoala generala ar ajuta mult), am facut numere reale, numere integer (adica intregi), float (adica numere reale) si asa mai departe.

In engleza, “numerele intregi” se numesc “integer”. Sunt doua moduri in care putem defini un numar intreg:

Integer x;

int y;

int y este o variabila si este o variabila clasica pe care probabil ai vazut-o si in alte limbaje de programare. Dar Integer este un pic diferit. Acesta este pur si simplu o clasa, dupa cum si Eclipse iti va spune pe ecran:

The Integer class wraps a value of the primitive type int in an object.

Aceste variabile trebuie intializate. Modul in care initializam o variabila de tip int este prin semnul “=” si valoarea pe care vrem sa o dam, in cazul nostru 0:

Integer x;

int y = 0;

Modul in care initializam o variabila de tip Integer – sau o variabila care este de fapt un obiect pentru ca x in acest caz este de fapt un obiect al acestui Integer, adica x va prelua proprietatile, metodele, functiile care exista in aceasta clasa Integer si le va putea folosi – va fi:

Integer x = new Integer(5);

I-am dat valoarea 5. Haideti sa printam acest lucru pe ecran:

System.out.println(x);

System.out.println(y);

Cand vom rula cele doua, pe ecran va aparea:

5

Acum poate te gandesti “Ok, si ce sens au aceste x si y? De ce e unul Integer si celalalt int?”. Ei bine, punand un “.” si scriind:

System.out.println(x.);

putem sa apelam metodele care se afla in clasa Integer. Asta este frumusetea acestor obiecte, acestor clase si a programarii orientate pe obiecte. Faptul ca noi definim un obiect al unei clase si acel obiect poate sa preia proprietatile clasei respective. De exemplu, putem transforma acest Integer intr-un String. Deci 5 sa nu mai fie o cifra, ci o litera. Stiu ca nu suna foarte corect, dar sunt diferite moduri in care poti sa procesezi aceste date.

De exemplu, in momentul in care tu iti introduci informatiile bancare si vrei sa cumperi ceva online, ai o grupare de litere si cifre. Ei bine, toate acele date vor fi tratate ca fiind String-uri si apoi vor fi analizate. Deci vor fi String-uri, nu vor fi luate ca fiind intregi. Abia dupa ce vor fi luate ca String-uri si procesate, tranzactia va avea succes.

Citeste si:  💻 Cum sa Creezi Variabile in Java | Programare in Java #2

Putem transforma x-ul in String, putem transforma acelasi x din Integer sa fie un int (public int intValue () – asta este clasa care transforma acest Integer intr-un int), si tot asa. Exista foarte multe lucruri pe care le poti face aici.

Urmareste acest tutorial in care explic mult mai clar conceptul de Programare Orientata pe Obiecte folosind Java:

Poti sa vezi care este valoarea maxima, sa compari doua int-uri, poti sa definesti un hash al lor, sa vezi care este cel mai mare bit, poti sa faci maximul intre cele doua sa afli care este mai mare dintre a si b. Sunt functii, dupa cum spuneam, predefinite in aceste clase. Vom alege functia toString si vom adauga un cuvant la intamplare care va fi, sa zicem, “tare”:

System.out.println(x.toString() + “tare”);

Vom rula si pe ecran va aparea:

5tare

Aceasta a devenit, by default, un String. Acelasi lucru poti sa il faci si cu String-uri. Poti sa iti definesti un obiect String, sa spunem:

String a = new String(“abc”);

Asta inseamna ca acestui a ii putem face diferite lucruri cu functiile predefinite, scriind:

a.

si selectand fie length() pentru a afla lungimea totala a acestui sir, sau specificand ca vrem sa luam un substring din acest String, de la 0 la 1:

String b – a.substring(0, 1);

System.out.println(a + “vs” + b);

Dupa ce vom rula, pe ecran va aparea:

abc vs. a

b are valoarea a.

Revenind in:

System.out.println(x.toString() + “tare”);

System.out.println(y);

observam ca y nu are aceste proprietati. Nu ii putem atribui ceva. Nu are anumite functii in spate de care sa se foloseasca. Si atunci y, dupa cum poti sa vezi, este o variabila clasica. Este un tip de variabila clasica, din acelea int, float, double si asa mai departe. Deci nu il vom putea folosi pentru a face operatii mai complexe.

Si acum sa vedem cum putem crea o clasa proprie si cum putem sa definim astfel de metode in aceste clase. Vom crea o noua clasa, ClasaMea, accesand New Class si numind-o:

public class ClasaMea {

}

Este foarte important ca numele fisierului sa fie identic cu numele ce va fi scris in linia de cod, mai ales daca este public. O sa vorbim in tutorialele urmatoare ce inseamna public, ce inseamna private.

Pe scurt, cand o clasa este public inseamna ca va putea fi apelata din alte clase. Adica aceasta clasa fiind public, o vom putea apela din ClasaPrincipala sau chiar dintr-un alt pachet. Vom discuta despre acest lucru mai tarziu. Daca ClasaMea ar fi private, in momentul care vom vrea sa facem diferite lucruri cu ea, nu vom putea.

Hai sa definim in ClasaMea:

public class ClasaMea {

int x;

String a;

public String numeleMeu(String nume) {

return nume;

}

}

Am creat doua variabile (int x si String a), dupa care am creat o metoda care este publicString, adica imi va intoarce un String ce se numeste numeleMeu si cere ca parametru un nume, si apoi am intors acest nume. Revenind in ClasaPrincipala, vom defini un obiect ce se va numi ClasaMea:

ClasaMea ob1 = new ClasaMea();

Astfel am creat un obiect si l-am intializat. Daca vom scrie sub:

ob1.

vom vedea ca avem variabile declarate mai inainte: String a si int x.

Vom lua ob1.x si ob1.a si le vom da valori:

ob1.x = 10;

ob1.a = “Ramon”;

Apoi vom printa in felul urmator:

System.out.println(ob1.numeleMeu(ob1.a));

Dupa ce vom rula, pe ecran va aparea

Ramon

Ce am facut aici este ca am apelat functia din ob1, functia din ClasaMea, si i-am dat variabila ca si parametru, mai exact variabila String a careia noi i-am atribuit o anumita valoare.

In clasa principala, putem merge mai departe si adauga in

System.out.println(ob1.numeleMeu(ob1.a));

astfel:

System.out.println(ob1.numeleMeu(ob1.a) + “ numarul este: ” + ob1.x);

Pe ecran va aparea:

Ramon numarul este: 10

Ce am facut in acest tutorial este:

  • am creat o clasa
  • i-am creat acestei clase anumte variabile
  • am adaugat anumite valori acestor variabile
  • ne-am folosit de valori pentru a intoarce un anumit rezultat dintr-o functie din clasa pe care am definit-o separat
  • am printat totul pe ecran

Aceste sunt doar cateva metode pe care le poti folosi pentru a incepe programarea orientata pe obiecte. Cam atat cu acest tutorial!

Ne vedem in tutorialele urmatoare!

Summary
Review Date
Reviewed Item
Clase in Java | Programare Orientata pe Obiecte (POO) in Java
Author Rating
51star1star1star1star1star