@Mr_Oizo
Ich habe dir mal fix die Basis des Codes geschrieben. Es fehlen noch Sedan und Van, Kommentare über den Methoden, Klasse und Klassenmembern. Falls du Fragen zum Code hast oder nicht weißt, wie es weiter geht, sag Bescheid.
Alles anzeigen
Alles anzeigen
Ich habe dir mal fix die Basis des Codes geschrieben. Es fehlen noch Sedan und Van, Kommentare über den Methoden, Klasse und Klassenmembern. Falls du Fragen zum Code hast oder nicht weißt, wie es weiter geht, sag Bescheid.
Java-Quellcode: IVehicle.java
- package vehiclerental.vehicle;
- public interface IVehicle {
- public String getRegistrationPlate();
- public boolean checkDriverEligibility(int driverAge, String licenseType);
- public void addBookedDate(String date);
- public void removeBookedDate(String date);
- public boolean bookedOnDate(String date);
- public String[] getBookedDates();
- }
Java-Quellcode: AbstractVehicle.java
- package vehiclerental.vehicle;
- import java.util.HashSet;
- import java.util.Set;
- public abstract class AbstractVehicle implements IVehicle {
- protected String registrationPlate;
- protected Set bookDates;
- public AbstractVehicle(String registrationPlate) {
- this.registrationPlate = registrationPlate;
- bookDates = new HashSet<>();
- }
- @Override
- public String getRegistrationPlate() {
- return registrationPlate;
- }
- @Override
- public void addBookedDate(String date) {
- bookDates.add(date);
- }
- @Override
- public void removeBookedDate(String date) {
- bookDates.remove(date);
- }
- @Override
- public boolean bookedOnDate(String date) {
- return bookDates.contains(date);
- }
- @Override
- public String[] getBookedDates() {
- return (String[]) bookDates.toArray();
- }
- }
Java-Quellcode: Motorcycle.java
- package vehiclerental.vehicle;
- import java.util.Arrays;
- public class Motorcycle extends AbstractVehicle {
- protected int sideCarSeats;
- protected static final String[] allowedLicenseTypes = {"A"};
- public Motorcycle(String registrationPlate, int sideCarSeats) {
- super(registrationPlate);
- this.sideCarSeats = sideCarSeats;
- }
- @Override
- public boolean checkDriverEligibility(int driverAge, String licenseType) {
- return driverAge >= 24 && Arrays.asList(allowedLicenseTypes).contains(licenseType);
- }
- public int getSideCarSeats() {
- return sideCarSeats;
- }
- }