Skip to content

Commit 6f4024e

Browse files
committed
Ejercicio #28 completo
1 parent 79700a2 commit 6f4024e

File tree

1 file changed

+61
-1
lines changed

1 file changed

+61
-1
lines changed

Roadmap/28 - SOLID LSP/java/simonguzman.java

+61-1
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,70 @@ public class simonguzman {
88
public static void main(String[] args) {
99
//libraryManagementSystemLiskovViolation();
1010
//libraryLSP();
11-
LiskovIncorrectTest();
11+
//LiskovIncorrectTest();
12+
LiskovCorrectTest();
1213
}
1314
/****************************** ejercicio adicional con lsp (Correcto) ******************************/
15+
public static void LiskovCorrectTest() {
16+
VehiculoLsp coche = new Coche();
17+
VehiculoLsp bicicleta = new Bicicleta();
18+
VehiculoLsp motocicleta = new Motocicleta();
19+
20+
// Probar comportamiento de los vehículos
21+
acelerarYFrenarLsp(coche);
22+
acelerarYFrenarLsp(bicicleta);
23+
acelerarYFrenarLsp(motocicleta);
24+
}
25+
26+
public static void acelerarYFrenarLsp(VehiculoLsp vehiculo) {
27+
vehiculo.acelerar();
28+
vehiculo.frenar();
29+
}
30+
31+
static class VehiculoLsp {
32+
public void acelerar() {
33+
System.out.println("El vehículo está acelerando.");
34+
}
35+
36+
public void frenar() {
37+
System.out.println("El vehículo está frenando.");
38+
}
39+
}
40+
41+
static class Coche extends VehiculoLsp {
42+
@Override
43+
public void acelerar() {
44+
System.out.println("El coche está acelerando rápidamente.");
45+
}
1446

47+
@Override
48+
public void frenar() {
49+
System.out.println("El coche está frenando suavemente.");
50+
}
51+
}
52+
53+
static class Bicicleta extends VehiculoLsp {
54+
@Override
55+
public void acelerar() {
56+
System.out.println("La bicicleta está acelerando lentamente.");
57+
}
58+
59+
@Override
60+
public void frenar() {
61+
System.out.println("La bicicleta está frenando manualmente.");
62+
}
63+
}
64+
static class Motocicleta extends VehiculoLsp {
65+
@Override
66+
public void acelerar() {
67+
System.out.println("La motocicleta está acelerando con potencia.");
68+
}
69+
70+
@Override
71+
public void frenar() {
72+
System.out.println("La motocicleta está frenando rápidamente.");
73+
}
74+
}
1575
/****************************** ejercicio adicional sin lsp (Incorrecto) ******************************/
1676
public static void LiskovIncorrectTest() {
1777
Vehiculo cocheElectrico = new CocheElectrico();

0 commit comments

Comments
 (0)