Ingineria Programarii 1. Use-Case Diagrams 2. Activity Diagrams 3. Delegare, interfete, clase abstracte, obiecte imutabile, interfete marker |
|
---|---|
Laborator 2 Pentru acest laborator va trebui sa implementati in limbajul Java un sistem de gestiune a traficului aerian. Veti avea de construit urmatoarele: 1. O interfata AirplaneDataInterface care furnizeaza metodele: getAirplaneName() (returneaza numele avionului, e.g. "Boeing 747"), getAirplaneInformation() (furnizeaza capacitatea avionului, de ex. 250 de locuri, si numarul de clase de zbor, de ex. 3 clase), getAirplaneType() (furnizeaza tipul avionului, e.g. comercial, zbor regulat, cargo, etc.). 2. O clasa abstracta AbstractAirplane care furnizeaza metodele: getAirline() (returneaza numele liniei aeriene, e.g. "TAROM"), setAirline() (seteaza numele liniei aeriene pentru un avion). 3. Un obiect imutabil de tipul AirportInformation care furnizeaza metodele getAirportAddress(), getAirportTelephone() si getAirportManager() pentru furnizarea adresei, numarului de telefon si a numelui managerului aeroportului. Veti realiza un constructor care seteaza acesti parametrii in obiectul vostru. 4. Un aeroport este reprezentat de un obiect de tipul Airport care incapsuleaza un obiect de tipul AirportInformation cu informatii despre aeroport. Veti realiza un constructor pentru Airport care seteaza acesti parametrii in obiectul incapsulat. Fiecare aeroport mentine lista de avioane din el folosind o clasa generala Vector (vezi laboratorul 1). 5. Un avion este reprezentat printr-un obiect de tipul Airplane care deriva din AbstractAirplane si implementeaza AirplaneDataInterface. FUNCTIONARE 1. Pentru implementare veti folosi cel putin 3 aeroporturi si in fiecare aeroport cel putin 3 avioane. 2. Programul vostru va adauga initial cate 3 avioane in fiecare din cele 3 aeroporturi (toate avioanele sunt diferite intre ele, si toate aeroporturile sunt diferite intre ele). In continuare, ii va cere utilizatorului sa efectueze zboruri intre doua aeroporturi, folosind unul din avioanele disponibile din aeroportul de plecare (adica sterge avionul respectiv din lista de avioane a aeroportului sursa, si il adauga in lista de avioane a aeroportului destinatie). NOTA: Puteti folosi orice alte elemente auxiliare in programul vostru. Puteti de asemenea adauga parametrii metodelor dupa cum considerati. Puteti adauga metode si atribute suplimentare claselor voastre, cu exceptia interfetelor si a claselor abstracte. |