diff --git a/src/tpOO/tp08/Food.java b/src/tpOO/tp08/Food.java
new file mode 100644
index 0000000000000000000000000000000000000000..6e471fa0cee54ead4e53c220ba0c295a576ad6b6
--- /dev/null
+++ b/src/tpOO/tp08/Food.java
@@ -0,0 +1,46 @@
+package tpOO.tp08;
+import java.time.LocalDate;
+
+public class Food {
+    String label;
+    double price;
+    LocalDate bestBeforeDate;
+    
+    Food(String label, double price, LocalDate bestBeforeDate){
+        this.label = label;
+        this.bestBeforeDate = bestBeforeDate;
+        this.price = price;
+    }
+
+    Food(String label, double price){
+        this(label, price, LocalDate.now().plusDays(10));
+    }
+
+    String getLabel(){
+        return this.label;
+    }
+
+    double getPrice(){
+        return this.price;
+    }
+
+    LocalDate getBestBeforeDate(){
+        return this.bestBeforeDate;
+    }
+
+    boolean isPerishable(){
+        return true;
+    }
+
+    @Override
+    public String toString(){
+        return this.label + "=>" + this.price + " à consommer avant le " + this.bestBeforeDate;
+    }
+
+    boolean isBestBefore(LocalDate date){
+        if(date.compareTo(this.bestBeforeDate)>0){
+            return false;
+        }
+        return true;
+    }
+}
diff --git a/src/tpOO/tp08/Furniture.java b/src/tpOO/tp08/Furniture.java
new file mode 100644
index 0000000000000000000000000000000000000000..ae528caa5a0a8625131927c7a93593c8580384d4
--- /dev/null
+++ b/src/tpOO/tp08/Furniture.java
@@ -0,0 +1,5 @@
+package tpOO.tp08;
+
+public class Furniture {
+    
+}
diff --git a/src/tpOO/tp08/Iproduct.java b/src/tpOO/tp08/Iproduct.java
new file mode 100644
index 0000000000000000000000000000000000000000..3d0a347a50064c3513bd6964d9fbde1375a9868d
--- /dev/null
+++ b/src/tpOO/tp08/Iproduct.java
@@ -0,0 +1,6 @@
+package tpOO.tp08;
+
+interface Iproduct{
+    double getPrice();
+    boolean isPerishable();
+}
\ No newline at end of file
diff --git a/src/tpOO/tp08/Shelf.java b/src/tpOO/tp08/Shelf.java
new file mode 100644
index 0000000000000000000000000000000000000000..99b89621082d20cf66dd17b376e373bb6e6f4a99
--- /dev/null
+++ b/src/tpOO/tp08/Shelf.java
@@ -0,0 +1,5 @@
+package tpOO.tp08;
+
+public class Shelf {
+    
+}
diff --git a/src/tpOO/tp08/Shop.java b/src/tpOO/tp08/Shop.java
new file mode 100644
index 0000000000000000000000000000000000000000..2ce74380f13f05760d740645983c6246d1764609
--- /dev/null
+++ b/src/tpOO/tp08/Shop.java
@@ -0,0 +1,5 @@
+package tpOO.tp08;
+
+public class Shop {
+    
+}
diff --git a/src/tpOO/tp08/UseComparable.java b/src/tpOO/tp08/UseComparable.java
new file mode 100644
index 0000000000000000000000000000000000000000..691cb23708e288893c6ad1902d162685376b0d06
--- /dev/null
+++ b/src/tpOO/tp08/UseComparable.java
@@ -0,0 +1,18 @@
+package tpOO.tp08;
+
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.Collections;
+
+public class UseComparable {
+    public static void main(String[] args) {
+    Food f1 = new Food("pasta", 3.25, LocalDate.of(2019, 1, 1));
+    Food f2 = new Food("fish", 10.0, LocalDate.of(2019, 1, 10));
+    Food f3 = new Food("meat", 15.0, LocalDate.of(2019, 1, 3));
+    ArrayList<Food> storage = new ArrayList<Food>();
+    storage.add(f1);storage.add(f2);storage.add(f3);
+    System.out.println(storage);
+    Collections.sort(storage);
+    System.out.println(storage);
+    }
+}