- Interface og Arv | Programmering
- Lag et interface kalt ?Drikkbar?. Det skal ha to metoder: drikkGlass(); og fyllOpp();
- Lag deretter en klasse ?Drikke? som implementerer grensesnittet drikkbar. Klassen skal representere en flaske med drikke, og m? holde p? hvor mange desiliter (dl) det er plass til i flasken. I tillegg skal den vite hvor mange desiliter det er igjen i flasken akkurat n?. Maksst?rrelsen p? flasken settes i konstrukt?ren og vi kan anta at flasken er full n?r den opprettes.
Dersom metoden ?drikkGlass? kalles skal flaskens innholde reduseres med 2 dl, og om det er mindre enn 2 dl igjen skal flasken t?mmes (til 0). Metoden ?fyllOpp? skal fylle flasken helt full. - Utvid programmet ditt med subklassen ?l (Ol). Den skal v?re lik drikke, men i stede for at flasken reduseres med 2 dl, skal den reduseres med en halv liter n?r et glass drikkes.
Lag ogs? en toString()-metode for b?de drikke og ?l.
Hint: husk @Override der du mener det er riktig. - Tegn klassehierarkiet for oppgaven.
- Skriv en liten test til programmet.
- Interface og Arv | Tegning og diskusjon
- Gitt f?lgende klasse- og grensesnitt-definisjoner, tegn klassehierarkiet:
- Diskusjon: Hvilket, om noe, grensesnitt implementeres i C?
- Gitt f?lgende klasse- og grensesnitt-definisjoner, tegn klassehierarkiet:
- Interface og Arv | Klassehierarki
Gitt f?lgende klassehierarki, skriv opp klasse- og grensesnitt-definisjonene (som 2A).
- Interface | Programmering og Diskusjon
- Vi skal lage en enkel modell av en n?ringskjede. P? toppen av n?ringskjeden finnes rovdyrene og p? bunnen finnes planteeterne. Skriv to grensesnitt, et for rovdyr og et for planteetere. Rovdyrene skal kunne jakte, mens planteeterne skal kunne beskytte seg selv.
- Skriv klassene Bjorn, Ulv, Elg og Sau som implementerer de riktige grensesnittene over. Metodene som m? implementeres trenger kun ? printe ut en beskjed om hva dyret gj?r. Opprett objekter av klassene og legg alle rovdyrene i en array av rovdyr, mens du legger alle planteeterne i en array av planteetere. Test programmet ditt.
Diskusjon: hva gj?r man med Bj?rn, er den et rovdyr eller en planteeter, eller kan vi gj?re den til begge deler..? - Tegn opp klassehierarkiet med alle klasser og grensesnitt.