@@ -8,10 +8,70 @@ public class simonguzman {
8
8
public static void main (String [] args ) {
9
9
//libraryManagementSystemLiskovViolation();
10
10
//libraryLSP();
11
- LiskovIncorrectTest ();
11
+ //LiskovIncorrectTest();
12
+ LiskovCorrectTest ();
12
13
}
13
14
/****************************** 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
+ }
14
46
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
+ }
15
75
/****************************** ejercicio adicional sin lsp (Incorrecto) ******************************/
16
76
public static void LiskovIncorrectTest () {
17
77
Vehiculo cocheElectrico = new CocheElectrico ();
0 commit comments