...
Vehicle(char, char, String) - Konstruktør der argument-rekkefølgen må være kjøretøystype, drivstofftype og registreringsnummer. Ved ugyldige argumenter utløses unntak av typen IllegalArgumentException.
- getFuelType() - returnerer type drivstoff som følgende: ‘H’ for hydrogen, ‘E’ for elektrisitet, ‘D’ for diesel eller ‘G’ for bensin.
- getRegistrationNumber() - returnerer registreringsnummeret
setRegistrationNumber(String) - endrer registreringsnummeret dersom det er gyldig i henhold til kravene over, og utløse utløser unntak av typen IllegalArgumentException dersom det ikke er gyldig.
getVehicleType() - returnerer kjøretøystype: 'M' for motosykkel, 'C' for bil.
Del 1
...
– Java-kode
Implementer Vehicle-klassen som beskrevet over med stram innkapsling. Eventuelle hjelpemetoder for validering bør også ha stram innkapsling. Det kan være lurt å lese om String-klassen og dens metoder før du setter i gang.
Testkode for denne oppgaven finner du her: encapsulation/VehicleTest.java. Jextest-koden for oppgaven finner du her: encapsulation/Vehicle.jextest
Merk at din implementasjon må ligge i en pakke med samme navn som testkodens pakke. Pass derfor på at Vehicle-klassen ligger i pakken "encapsulation"