05 Programacion Orientada A Objetos Con Java
05 Programacion Orientada A Objetos Con Java
POO
Programación Orientada a Objetos
Programación Orientada a Objetos
Clase Objeto
Programación Orientada a Objetos
Contenido
Introducción
Programación Java
Introspección
Utilidades de Java
Encapsulación
Herencia
Polimorfismo
Atributos
Comportamiento m1
(métodos)
Bicicleta
Superclase
Subclases
Reutilización de clases
Diseño de una nueva clase a partir de otra (herencia)
+ Acceso público
- Acceso privado
# Acceso protegido
Multipicidad Significado
Agregar agua
Desbordamiento
Capacidad
Volumen
actual
Quitar agua
Atributos (campos)
Depósito de agua
Atributos (campos)
Capacidad (m3)
Volumen actual (m3)
agregarAgua(cantidad)
Métodos quitarAgua(cantidad)
String nombre;
Persona alumno;
encabezado
Modificadores
Lista de parámetros
mostrarMensajeBienvenida(“Hola mundo”);
int a = 5, b = 10, c;
c = suma(5, 10);
c= suma(a, b);
int x = teclado.nextInt();
return x;
}
x = leerNumero();
y = leerNumero();
suma=0;
System.out.println(suma/0);
}
java.lang.ArrayIndexOutOfBoundsException
java.lang.ArithmeticException
try {
// bloque de código que gestiona la
excepción
}
catch ( tipoExcepción1 objeto ) {
// Gestión del tipo de excepción 1
}
catch ( tipoExcepción2 objeto ) {
// Gestión de tipo de excepción 2
}
finally {
// Gestión de otras excepciones
}
java.lang.Object
|
+--java.lang.Throwable
|
+--java.lang.Exception
|
+--java.lang.RuntimeException
|
+--java.lang.IndexOutOfBoundsException
|
+--
java.lang.ArrayIndexOutOfBoundsException
int x = teclado.nextInt();
}
catch (NumberFormatException e) {
System.out.print("Numero no válido !!" );
}
catch (IOException e) {
System.out.print( "Error de entrada" );
}
}
Programación orientada a objetos con Java 67
Programación Java
Clases y objetos
Identidad
Estado
Comportamiento
Identidad
Estado
Comportamiento
dni
nombre
apellidos
anioNacimiento
mostrarNombre()
p1.nombre = ″Juan″;
p1.apellidos = ″Gonzalez″;
p2.nombre = ″Luis″;
p2.apellidos = ″Gómez″;
p1.mostraNombre();
p2.mostrarNombre();
}
}
getNombre()
setNombre()
this.nombre = nombre;
public Cuenta() {
this.balance = 0;
this.limiteCredito = LIMITE;
}
}
}
int x = 100;
int y = 200;
int z;
public Cuenta() {
this.balance = 0;
this.limiteCredito = LIMITE;
}
PI = Double.parseDouble(pi);
}
Vehiculo
marca
modelo
precioAlquiler
getMarca()
Autobús Turismo
numPlazas numPuertas
listaVehiculos.add(new Vehiculo("Mercedes","E",55));
listaVehiculos.add(new Autobus("Mercedes","M20",100,20));
listaVehiculos.add(new Turismo("BMW","525",50,4));
listaVehiculos.add(new Turismo("Audi","A4",55,4));
listaVehiculos.add(new Autobus("Mercedes","M10",120,30));
listaVehiculos.add(new Turismo("VW","Passat",35,4));
listaVehiculos.add(new Turismo("Audi","A3",30,2));
listaVehiculos.add(new Turismo("Mercedes","E",60,4));
listaVehiculos.add(new Vehiculo("Audi","A3",30));
imprimirElementosLista((ArrayList)listaVehiculos);
}
}
Turismo("Audi","A4",55,4)
Vehiculo("Mercedes","E",55)
Autobus("Mercedes","M20",100,20)
public SI SI
protected SI SI
private NO NO
public SI SI
protected SI NO
private NO NO
listaVehiculos.add(new Vehiculo("Mercedes","E",55));
listaVehiculos.add(new Autobus("Mercedes","M20",100,20));
listaVehiculos.add(new Turismo("BMW","525",50,4));
listaVehiculos.add(new Turismo("Audi","A4",55,4));
listaVehiculos.add(new Autobus("Mercedes","M10",120,30));
listaVehiculos.add(new Turismo("VW","Passat",35,4));
listaVehiculos.add(new Turismo("Audi","A3",30,2));
listaVehiculos.add(new Turismo("Mercedes","E",60,4));
listaVehiculos.add(new Vehiculo("Audi","A3",30));
imprimirElementosLista((ArrayList)listaVehiculos);
}
}
v.imprimirAtributos();
System.out.println("");
}
}
Exception.class.getName()
Scanner.class.getName()
java.lang.Exception
java.util.Scanner
import java.util.Comparator;
return 0;
}
}
imprimirLista((ArrayList)listaPersonas);
listaPersonas.remove(2);
imprimirLista((ArrayList)listaPersonas);
Collections.sort(listaPersonas,new ComparadorPersona());
imprimirLista((ArrayList)listaPersonas);