Results 1 to 5 of 5

Thread: Programare in java!

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Standard RSP member gessle's Avatar
    Join Date
    31 Jan 2007
    Location
    tg ocna;jud. BACAU
    Posts
    719
    Mentioned
    0 Post(s)
    Rep Power
    74

    Default Re: Programare in java!

    Variabile

    Variabilele pot avea ca tip fie un tip primitiv de data, fie o referinta la un obiect.

    Declararea variabilelor=tip nume_variabila
    Initializarea variabilelor=tip nume_variabila,adica valoare
    Declararea constantelor=final tip nume_variabila





    Conventia de notare a variabilelor in Java este data de urmatoarele criterii:

    1. variabilele finale (constante) se scriu cu majuscule
    2. variabilele normale se scriu astfel : prima litera cu litera mica, daca numele variabilei este format din mai multi atomi lexicali, atunci primele litere ale celorlalti atomi se scriu cu majuscule, de exemplu:
      final double PI = 3.14;
      int valoare = 100;
      long numarElemente = 12345678L;
      String bauturaMeaPreferata = "apa";


    In functie de locul �n care sunt declarate variabile se �mpart �n urmatoatele categorii:
    1. Variabile membre, declarate �n interiorul unei clase, vizibile pentru toate metodele clasei respective si pentru alte clase �n functie de nivelul lor de acces (vezi "Declararea variabilelor membre")
    2. Variabile locale, declarate �ntr-o metoda sau �ntr-un bloc de cod, vizibile doar �n metoda/blocul respectiv
    3. Parametri metodelor, vizibili doar �n metoda respectiva
    4. Parametrii de la tratarea exceptiilor





    Obs: variabilele declarate �ntr-un for pentru controlul ciclului, ram�n locale corpului ciclului. for(int i=0; i<100; i++) { }
    int i; //ok �n Java, eroare �n C++

    Obs: Spre deosebire de C++ nu este permisa ascunderea unei variabile : int x=12;
    {
    int x=96; //ilegal
    }
    FOCUS SAT-UPC;RCS-digital cablu;ADSL;BAYERN MUNCHEN&AC MILAN;
    .de

  2. #2
    Standard RSP member gessle's Avatar
    Join Date
    31 Jan 2007
    Location
    tg ocna;jud. BACAU
    Posts
    719
    Mentioned
    0 Post(s)
    Rep Power
    74

    Default Re: Programare in java!

    Vectori

    Crearea unui vector


    1. Declararea vectorului Tip[] numeVector; sau
      Tip numeVector[];
      Ex: int[] intregi;
      String adrese[];
    2. Instantierea
      Se realizeaza prin intermediul operatorului new si are ca efect alocarea memoriei pentru vector, mai precis specificarea numarului maxim de elemente pe care �l va avea vectorul; numeVector = new Tip[dimensiune];
      Ex: v = new int[10]; //se aloca spatiu pentru 10 intregi
      adrese = new String[100];
      Obs: declararea si instantierea unui vector pot fi facute simultan astfel: Tip[] numeVector = new Tip[dimensiune];
    3. Initializarea (optional)
      Dupa declararea unui vector, acesta poate fi initializat, adica elementele sale pot primi niste valori initiale, evident daca este cazul pentru asa ceva. In acest caz instantierea lipseste, alocarea memoriei fac�ndu-se automat �n functie de numarul de elemente cu care se initializeaza vectorul. Ex: String culori[] = {"Rosu", "Galben", "Verde"};
      int []factorial = {1, 1, 2, 6, 24, 120};

    Observatii:
    Primul indice al unui vector este 0, deci pozitiile unui vector cu n elemente vor fi cuprinse �ntre 0 si n-1
    Nu sunt permise constructii de genul Tip numeVector[dimensiune], alocarea memoriei fac�ndu-se doar prin intermediul opearatorului new. Ex: int v[10]; //ilegal
    int v[] = new int[10]; //corect
    Vectori multidimensionali
    In Java tablourile multidimensionale sunt de fapt vectori de vectori.
    Ex: int m[][]; //declararea unei matrici
    m = new int[5][10]; //cu 5 linii, 10 coloane
    Obs: m[0], m[1], ..., m[5] sunt vectori de intregi cu 10 elemente Dimensiunea unui vector
    Cu ajutorul cuv�ntului cheie length se poate afla dimensiunea unui vector.
    int []a = new int[5];
    a.length are valoarea 5
    int m = new int[5][10];
    m[0].length are valoarea 10
    Copierea vectorilor
    Copierea unui vector �n alt vector se face cu ajutorul metodei System.arraycopy:
    int x[] = {1, 2, 3, 4};
    int y[] = new int[4];
    System.arraycopy(x,0,y,0,x.length);
    Vectori cu dimensiune variabila
    Implementarea vectorilor cu numar variabil de elemente este oferita de clasa Vector din pachetul java.util. Un obiect de tip Vector contine numai elemente de tip Object.



    Siruri de caractere

    In Java, un sir de caractere poate fi reprezentat printr-un vector format din elemente de tip char, un obiect de tip String sau un obiect de tip StringBuffer.
    Declararea unui sir
    Daca un sir de caractere este constant atunci el va fi declarat de tipul String, altfel va fi declarat cu StringBuffer. (vezi "Clasele String, StringBuffer") Exemple echivalente de declarare a unui sir:
    String str = "abc";
    char data[] = {'a', 'b', 'c'};
    String str = new String(data);
    String str = new String("abc");
    Concatenarea sirurilor
    Concatenarea sirurilor de caractere se face prin intermediul operatorului +.
    String str1 = "abc" + "xyz";
    String str2 = "123";
    String str3 = str1 + str2;
    In Java, operatorul de concatenare + este extrem de flexibil �n sensul ca permite concatenarea sirurilor cu obiecte de orice tip care au o reprezentare de tip sir de caractere. System.out.print("Vectorul v are" + v.length + " elemente")



    Folosirea argumentelor de la linia de comanda

    O aplicatie Java poate primi oric�te argumente de la linia de comanda �n momentul lansarii ei. Aceste argumente sunt utile pentru a permite utilizatorului sa specifice diverse optiuni legate de functionarea aplicatiei sau sa furnizeze anumite date initiale programului.
    Atentie: Programele care folosesc argumente de la linia de comanda nu sunt 100% pure Java deoarece unele sisteme de operare cum ar fi Mac OS nu au �n mod normal linie de comanda. Argumentele de la linia de comanda sunt introduse la lansarea unei aplicatii, fiind specificate dupa numele aplicatiei si separate prin spatiu. De exemplu, sa presupunem ca aplicatia Sort ordoneaza lexicografic liniile unui fisier si primeste ca argument numele fisierului pe care sa �l sorteze. Pentru a ordona fisierul "persoane.txt" lansarea aplicatiei se va face astfel: java Sort persoane.txt
    Asadar, formatul general pentru lansarea unei aplicatii care primeste argumente de la linia de comanda este: java NumeAplicatie [arg1 arg2 . . . argn]
    In cazul �n care sunt mai multe, argumentele trebuie separate prin spatii iar daca unul dintre argumente contine spatii, atunci el trebuie pus �ntre ghilimele. Evident, o aplicatie poate sa nu primeasca nici un argument sau poate sa ignore argumentele primite de la linia de comanda.
    In momentul lansarii unei aplicatii interpretorul parcurge linia de comanda cu care a fost lansata aplicatia si, �n cazul �n care exista, transmite aplicatiei argumentele specificate sub forma unui vector de siruri. Acesta este primit de aplicatie ca parametru al metodei main. Reamintim ca formatul metodei main din clasa principala este: public static void main ( String args[])
    Vectorul primit ca parametru de metoda main va contine toate argumentele transmise programului de la linia de comanda. In cazul apelului java Sort persoane.txt vectorul args va contine un singur element args[0]="persoane.txt".
    Numarul argumentelor primite de un program este dat deci de dimensiunea vectorului args si acesta poate fi aflat prin intermediul atributului length al vectorilor: numarArgumente = args.length ;
    Spre deosebire ce C/C++ vectorul primit de metoda main nu contine pe prima pozitie numele aplicatiei, �ntruc�t �n Java numele aplicatiei este numele clasei principale, adica a clasei �n care se gaseste metoda main.
    Exemplu: afisarea argumentelor primite la linia de comanda public class Echo {
    public static void main (String[] args) {
    for (int i = 0; i < args.length; i++)
    System.out.println(args[i]);
    }
    }
    Un apel de genul java Echo Drink Hot Java va produce urmatorul rezultat: Drink
    Hot
    Java
    (aplicatia Echo a primit 3 argumente).
    Una apel de genul java Echo "Drink Hot Java" va produce urmatorul rezultat: Drink Hot Java
    (aplicatia Echo a primit un singur argument). Argumente numerice la linia de comanda
    Argumentele de la linia de comanda sunt primite sub forma unui vector de siruri (obiecte de tip String). In cazul �n care unele dintre acestea reprezinta valori numerice ele vor trebui convertite din siruri �n numere. Acest lucru se realizeaza cu metode de tipul parseXXX aflate �n clasa corespunzatoare tipului �n care vrem sa facem conversia: Integer, Float, Double, etc.
    Sa consideram, de exemplu, ca aplicatia Power ridica un numar real la o putere �ntreaga, argumentele fiind trimise de la linia de comanda:
    java Power "12.1" "3" //ridica 12.1 la puterea 3
    Conversia celor doua argumente �n numere se va face astfel: double numar;
    int putere;
    numar = Double.parseDouble(args[0]);
    putere = Integer.parseInt(args[1]);
    Metodele de tipul parseXXX pot produce exceptii (erori) de tipul NumberFormatException �n cazul �n care sirul primit ca parametru nu reprezinta un numar de tipul respectiv.

    P.S.Controlul executiei in java se aseamna cu cele din C!

    ===va urma===
    FOCUS SAT-UPC;RCS-digital cablu;ADSL;BAYERN MUNCHEN&AC MILAN;
    .de

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •