Diferență între revizuiri ale paginii „Colocviu POO 2015-2016”
De la WikiLabs
Jump to navigationJump to searchLinia 1: | Linia 1: | ||
− | Să se scrie o clasă <code>seriaf.poo.colocviu. | + | 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: | Reguli suplimentare: | ||
− | # Clasa <code> | + | # Clasa <code>Server</code> trebuie să aibă un constructor cu un argument de tip int: port. Constructorul nu arunca exceptii. |
− | # Clasa <code> | + | # 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> | + | # 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. | + | 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: | Reguli suplimentare: | ||
− | # Clasa <code> | + | # Clasa <code>Client</code> trebuie să aibă un constructor cu două argumente: String host, int port. Constructorul nu arunca exceptii. |
− | # Clasa <code> | + | # 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 14 ianuarie 2016 16:03
Să se scrie o clasă seriaf.poo.colocviu.Server
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:
- Clasa
Server
trebuie să aibă un constructor cu un argument de tip int: port. Constructorul nu arunca exceptii. - Clasa
Server
trebuie să aibă o metodăString getRandomQuote()
, apelabilă fără un obiect de tipServer
, ș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 clasajava.util.Random
- Clasa
Server
trebuie să aibă o metodăvoid listen()
, 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 metodeiString getRandomQuote()
. Această metodă trebuie să poată arunca excepții. - Clasa
Server
trebuie să fie executabilă, iar metodamain
trebuie să instanțieze un obiect de tipServer
, folosind ca port primul argument specificat la execuție și sa apeleze pentru el metodalisten
.
Să se scrie o clasă seriaf.poo.colocviu.Client
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
Client
trebuie să aibă un constructor cu două argumente: String host, int port. Constructorul nu arunca exceptii. - Clasa
Client
trebuie să aibă o metodăString getQuote()
, 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
Client
trebuie să fie executabilă, iar metodamain
trebuie să instanțieze un obiect de tipClient
, folosind ca host și port primele două argumente specificate la execuție, să apeleze pentru el metodagetQuote
și să afișeze string-ul obținut pe ecran.