POO Lab Lucrarea 2
De la WikiLabs
Jump to navigationJump to searchNoț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().
- Constructorul să aibă ca argumente, în ordine, destinatarul, expeditorul și apoi conținutul mesajului.
- Î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 și metodelor trebuie sa fie conform cu cele specificate mai sus.
- Clasele trebuie să facă parte din pachetul ro.upb.etti.poo.chat_application.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 Moodle.
- 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.