Ajout des stratégies

This commit is contained in:
Feror 2025-02-05 11:40:29 +01:00
parent 9137e7e133
commit 2a5a8b0a7c
10 changed files with 37 additions and 0 deletions

BIN
.DS_Store vendored

Binary file not shown.

BIN
src/.DS_Store vendored

Binary file not shown.

BIN
src/main/.DS_Store vendored Normal file

Binary file not shown.

BIN
src/main/java/.DS_Store vendored Normal file

Binary file not shown.

View file

@ -0,0 +1,12 @@
package movierental.MoviePriceCalculation;
public class ChildrenMoviePriceCalculation implements MoviePriceCalculationStrategy {
@Override
public double calculatePrice(int daysRented) {
double thisAmount = 1.5;
if (daysRented > 3) {
thisAmount += (daysRented - 3) * 1.5;
}
return thisAmount;
}
}

View file

@ -0,0 +1,5 @@
package movierental.MoviePriceCalculation;
public interface MoviePriceCalculationStrategy {
double calculatePrice(int daysRented);
}

View file

@ -0,0 +1,8 @@
package movierental.MoviePriceCalculation;
public class NewReleaseMoviePriceCalculation implements MoviePriceCalculationStrategy {
@Override
public double calculatePrice(int daysRented) {
return daysRented * 3;
}
}

View file

@ -0,0 +1,12 @@
package movierental.MoviePriceCalculation;
public class RegularMoviePriceCalculation implements MoviePriceCalculationStrategy {
@Override
public double calculatePrice(int daysRented) {
double thisAmount = 2;
if (daysRented > 2) {
thisAmount += (daysRented - 2) * 1.5;
}
return thisAmount;
}
}

BIN
src/test/.DS_Store vendored Normal file

Binary file not shown.

BIN
src/test/java/.DS_Store vendored Normal file

Binary file not shown.