Diferență între revizuiri ale paginii „POO Lab Lucrarea 2”
De la WikiLabs
Jump to navigationJump to searchLinia 10: | Linia 10: | ||
== Cerințe == | == Cerințe == | ||
− | * Să se scrie o clasă '''PrivateMessage''' ce va fi folosită ca purtătoare de date între un client de chat și un anumit destinatar, care să aibă următoarele proprietăți: | + | * Să se scrie o clasă '''PrivateMessage''', extinsă din clasa '''Message''', ce va fi folosită ca purtătoare de date între un client de chat și un anumit destinatar, care să aibă următoarele proprietăți: |
** Să stocheze numele expeditorului, un conținut și numele destinatarului; | ** Să stocheze numele expeditorului, un conținut și numele destinatarului; | ||
** Să fie imutabilă (odată creat un obiect, conținutul acestuia să nu mai poată fi modificat); | ** Să fie imutabilă (odată creat un obiect, conținutul acestuia să nu mai poată fi modificat); | ||
− | ** Să permită extragerea din obiectele de tip '''PrivateMessage''' ale unui mesaj formatat în modul specific mesajelor private în aplicațiile de chat | + | ** Să permită extragerea din obiectele de tip '''PrivateMessage''' ale unui mesaj formatat în modul specific mesajelor private în aplicațiile de chat -- "(priv) expeditor: continut" --, folosind mecanismul de suprascriere a metodelor. |
− | ** Să existe | + | ** Să existe o metodă prin care să se poată obține destinatarul pentru orice obiect de tip '''PrivateMessage''', numită ''getRecipient()''. |
* În clasa '''Main''' deja existentă, să se instanțieze cel puțin trei obiecte de tip '''PrivateMessage''' și să afișeze stringul formatat și destinatarul pentru fiecare. | * În clasa '''Main''' deja existentă, să se instanțieze cel puțin trei obiecte de tip '''PrivateMessage''' și să afișeze stringul formatat și destinatarul pentru fiecare. | ||
− | + | Observații: | |
− | * Fiecare clasă și membru trebuie să aibă unul din modificatorii de access ''public'' | + | * Numele claselor trebuie sa fie conform cu cele specificate mai sus. |
+ | * Clasele trebuie să facă parte din pachetul '''seriaf.poo.structs'''. | ||
+ | * Fiecare clasă și membru trebuie să aibă unul din modificatorii de access ''public'' sau ''private''. | ||
* Numele claselor trebuie sa fie conform cu cele specificate mai sus. | * Numele claselor trebuie sa fie conform cu cele specificate mai sus. | ||
* Utilizați mecanismele de moștenire și suprascriere. | * Utilizați mecanismele de moștenire și suprascriere. | ||
+ | |||
Predare: | Predare: | ||
− | * | + | * Codul se va preda și corecta automat pe platforma [http://homework.dcae.pub.ro:8888/Web-CAT/WebObjects/Web-CAT.woa WebCat]. Accesul pe această platformă se face folosind username-ul și parola de pe '''studenti.pub.ro'''. Odată conectați prima oară, va trebui să fiți înscriși manual de către profesor la cursul POO. Pentru acest lucru, completați-vă datele de acces în [https://docs.google.com/spreadsheets/d/1GxLF-LB2UNpA46qBTTXqmNOpqBpfR8txt0dxmipsZyM/edit?usp=sharing documentul de înscriere]. |
− | |||
− | |||
* <font color="red">'''Atenție:'''</font> Orice nerespectare ale indicațiilor de predare poate duce la pierderea în totalitate a punctajului. | * <font color="red">'''Atenție:'''</font> Orice nerespectare ale indicațiilor de predare poate duce la pierderea în totalitate a punctajului. | ||
+ | |||
+ | '''<font color="red">Atenție: Temele vor fi verificate anti-plagiat cu soft-uri specializate. Orice temă copiată va fi penalizată (atât sursa cât și copia) cu 100% din punctaj, fără posibilitate de refacere.</font>''' |
Versiunea de la data 11 octombrie 2015 13:00
Noțiuni și cunoștințe necesare
- Paradigma Obiect-Orientare; Clase și obiecte
- Noțiuni despre Java
- Realizarea și execuția unui program Java
- Sintaxa limbajului Java; Structura lexicală a unui program
- Convenții de programare
- Noțiuni avansate de programare obiect-orientată
Cerințe
- Să se scrie o clasă PrivateMessage, extinsă din clasa Message, ce va fi folosită ca purtătoare de date între un client de chat și un anumit destinatar, care să aibă următoarele proprietăți:
- Să stocheze numele expeditorului, un conținut și numele destinatarului;
- Să fie imutabilă (odată creat un obiect, conținutul acestuia să nu mai poată fi modificat);
- Să permită extragerea din obiectele de tip PrivateMessage ale unui mesaj formatat în modul specific mesajelor private în aplicațiile de chat -- "(priv) expeditor: continut" --, folosind mecanismul de suprascriere a metodelor.
- Să existe o metodă prin care să se poată obține destinatarul pentru orice obiect de tip PrivateMessage, numită getRecipient().
- În clasa Main deja existentă, să se instanțieze cel puțin trei obiecte de tip PrivateMessage și să afișeze stringul formatat și destinatarul pentru fiecare.
Observații:
- Numele claselor trebuie sa fie conform cu cele specificate mai sus.
- Clasele trebuie să facă parte din pachetul seriaf.poo.structs.
- Fiecare clasă și membru trebuie să aibă unul din modificatorii de access public sau private.
- Numele claselor trebuie sa fie conform cu cele specificate mai sus.
- Utilizați mecanismele de moștenire și suprascriere.
Predare:
- Codul se va preda și corecta automat pe platforma WebCat. Accesul pe această platformă se face folosind username-ul și parola de pe studenti.pub.ro. Odată conectați prima oară, va trebui să fiți înscriși manual de către profesor la cursul POO. Pentru acest lucru, completați-vă datele de acces în documentul de înscriere.
- Atenție: Orice nerespectare ale indicațiilor de predare poate duce la pierderea în totalitate a punctajului.
Atenție: Temele vor fi verificate anti-plagiat cu soft-uri specializate. Orice temă copiată va fi penalizată (atât sursa cât și copia) cu 100% din punctaj, fără posibilitate de refacere.