Diferență între revizuiri ale paginii „POO Lab Lucrarea 4”
De la WikiLabs
Jump to navigationJump to searchLinia 18: | Linia 18: | ||
#* Constructorul clasei trebuie să ia ca argumente un String reprezentând un nume de utilizator (expeditorul mesajelor) și o referință la un obiect de tip Socket, deja conectat. | #* Constructorul clasei trebuie să ia ca argumente un String reprezentând un nume de utilizator (expeditorul mesajelor) și o referință la un obiect de tip Socket, deja conectat. | ||
#* Clasa trebuie să aibă două metode: | #* Clasa trebuie să aibă două metode: | ||
− | #** | + | #** <code>void sendMessage(String message)</code> - creează un obiect de tip Message și il serializează folosind socket-ul disponibil. |
− | #** | + | #** <code>void sendMessage(String message, String receiver)</code> - creează un obiect de tip PrivateMessage și il serializează folosind socket-ul disponibil. |
# Realizați o clasă numită '''TextClient''', executabilă, cu următoarele restricții: | # Realizați o clasă numită '''TextClient''', executabilă, cu următoarele restricții: | ||
#* Metoda main din clasă trebuie să deschidă un Socket la adresa localhost (127.0.0.1) pe portul 9000 | #* Metoda main din clasă trebuie să deschidă un Socket la adresa localhost (127.0.0.1) pe portul 9000 | ||
#* Cât timp conexiunea este activă, să citească de la tastatură (folosind clasa Console - vezi [https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#console System.console()]) șiruri de caractere cu care apoi să apeleze metodele sendMessage de mai sus (Notă: Aveți dreptul să alegeți ce format doriți pentru a marca un mesaj privat, dar trebuie să fie descris în corpul email-ului în care submiteți tema). | #* Cât timp conexiunea este activă, să citească de la tastatură (folosind clasa Console - vezi [https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#console System.console()]) șiruri de caractere cu care apoi să apeleze metodele sendMessage de mai sus (Notă: Aveți dreptul să alegeți ce format doriți pentru a marca un mesaj privat, dar trebuie să fie descris în corpul email-ului în care submiteți tema). |
Versiunea de la data 1 decembrie 2014 20:45
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ă
- Java Application Programming Interface (API)
- Stream-uri de Input/Output
- Tratarea excepțiilor
- Serializarea obiectelor
- Socket-uri de rețea
Cerințe
- Realizați o clasă numită ClientPeer cu următoarele restricții:
- Constructorul clasei trebuie să ia ca argumente un String reprezentând un nume de utilizator (expeditorul mesajelor) și o referință la un obiect de tip Socket, deja conectat.
- Clasa trebuie să aibă două metode:
void sendMessage(String message)
- creează un obiect de tip Message și il serializează folosind socket-ul disponibil.void sendMessage(String message, String receiver)
- creează un obiect de tip PrivateMessage și il serializează folosind socket-ul disponibil.
- Realizați o clasă numită TextClient, executabilă, cu următoarele restricții:
- Metoda main din clasă trebuie să deschidă un Socket la adresa localhost (127.0.0.1) pe portul 9000
- Cât timp conexiunea este activă, să citească de la tastatură (folosind clasa Console - vezi System.console()) șiruri de caractere cu care apoi să apeleze metodele sendMessage de mai sus (Notă: Aveți dreptul să alegeți ce format doriți pentru a marca un mesaj privat, dar trebuie să fie descris în corpul email-ului în care submiteți tema).