Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian

Similar presentations


Presentation on theme: "Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian"— Presentation transcript:

1 Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian

2 Cuprins Notiuni de programare orientata obiect
Organizarea claselor in pachete. Clase fundamentale Mostenirea claselor Clase abstracte si interfete Polimorfismul Lucrul cu fisiere Tratarea exceptiilor Colectii de obiecte Interfete grafice folosind AWT. Applet-uri Fire de executie

3 Supraincarcarea metodelor (overloading)
Polimorfism : Cuprins Supraincarcarea metodelor (overloading) Suprascrierea metodelor (overriding) Legarea dinamica a metodelor

4 Overloading Doua metode din aceeasi clasa se numesc supraincarcate (overloaded) daca: Au acelasi nume Difera prin numarul sau tipul argumentelor Nu difera doar prin tipul returnat Numele unei metode impreuna cu numarul si tipul argumentelor se numeste semnatura metodei

5 Overloading public class Number { private double n;
public Number(double n) { this.n = n; } public double getNumber() { return n; } public double add(double m) { return n + m; } public double add(Number m) { return n + m.getNumber(); } }

6 Supraincarcarea metodelor (overloading)
Polimorfism : Cuprins Supraincarcarea metodelor (overloading) Suprascrierea metodelor (overriding) Legarea dinamica a metodelor

7 O metoda nu poate fi suprascrisa decat o data intr-o clasa
Overriding O metoda dintr-o clasa parinte poate fi suprascrisa (overrided) de o metoda din clasa derivata daca: Au acelasi nume Au acelasi numar si tipul de argumente Au acelasi tipul returnat Drepturile de acces nu sunt mai restranse O metoda nu poate fi suprascrisa decat o data intr-o clasa

8 Overriding Player # file : FileInputStream; + open() : void;
+ play() : void; + stop() : void; + pause() : void; Mp3Player + play() : void; + stop() : void; + pause() : void; WavPlayer + play() : void; + stop() : void; + pause() : void;

9 Supraincarcarea metodelor (overloading)
Polimorfism : Cuprins Supraincarcarea metodelor (overloading) Suprascrierea metodelor (overriding) Legarea dinamica a metodelor

10 Legarea dinamica In cazul unor metode suprascrise (overrided) nu se va sti decat la executie care dintre metode va fi apelata La apelarea unei metode suprascrise, Java nu priveste la tipul referintei ci la tipul intern al obiectului pentru care este apelata metoda

11 Legarea dinamica Player p1 = new Mp3Player(); Player p2 = new WavPlayer(); p1.play(); /* Se va apela metoda play() a clasei Mp3Player */ p2.play(); /* Se va apela metoda play() a clasei WavPlayer */


Download ppt "Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian"

Similar presentations


Ads by Google