Colocviu POO 2015-2016: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Fără descriere a modificării
(Pagină înlocuită cu „<!-- Să se scrieee... -->”)
Linia 1: Linia 1:
Să se scrie o clasă <code>seriaf.poo.colocviu.Server</code> care să accepte conexiuni de la clienți și pentru orice client care se conectează, să serializeze un obiect de tip String reprezentand un citat faimos, ales aleator dintr-un vector.
<!--


Reguli suplimentare:
Să se scrieee...
# Clasa <code>Server</code> trebuie să aibă un constructor cu un argument de tip int: port. Constructorul nu arunca exceptii.
# Clasa <code>Server</code> trebuie să aibă o metodă <code>String getRandomQuote()</code>, apelabilă fără un obiect de tip <code>Server</code>, și care la fiecare apel să întoarcă un String reprezentând un citat dintr-o listă de cel puțin 5 citate (scrise de voi, sau cautate pe Internet). Vezi clasa <code>java.util.Random</code>
# Clasa <code>Server</code> trebuie să aibă o metodă <code>void listen()</code>, care să accepte conexiuni de la clienți într-o buclă infinită, pe portul dat constructorului, și pentru fiecare client conectat să serializeze un String obțiunt prin apelul metodei <code>String getRandomQuote()</code>. Această metodă trebuie să poată arunca excepții.
# Clasa <code>Server</code> trebuie să fie executabilă, iar metoda <code>main</code> trebuie să instanțieze un obiect de tip <code>Server</code>, folosind ca port primul argument specificat la execuție și sa apeleze pentru el metoda <code>listen</code>.


Să se scrie o clasă <code>seriaf.poo.colocviu.Client</code> care să să conecteze la un Server, să citească de la server un String reprezentand un citat pe care să îl afișeze pe ecran.
-->
 
Reguli suplimentare:
# Clasa <code>Client</code> trebuie să aibă un constructor cu două argumente: String host, int port. Constructorul nu arunca exceptii.
# Clasa <code>Client</code> trebuie să aibă o metodă <code>String getQuote()</code>, care să se conecteze la un server care rulează host-ul și portul specificat constructorului și să întoarcă un obiect de tip String deserializat dinspre server. Această metodă trebuie să poată arunca excepții.
# Clasa <code>Client</code> trebuie să fie executabilă, iar metoda <code>main</code> trebuie să instanțieze un obiect de tip <code>Client</code>, folosind ca host și port primele două argumente specificate la execuție, să apeleze pentru el metoda <code>getQuote</code> și să afișeze string-ul obținut pe ecran.

Versiunea de la data 19 ianuarie 2016 22:42