Decisión
Entrada
Salida
Cálculo
Repetición
Cálculo
Input
Output
(escribe)
(ejecuta)
Código fuente
(en un lenguaje)
Código máquina
Compilador
(compila)
Código fuente
(Java)
Código máquina
interpreta
Bytecode
(*.class)
Compilador "javac"
(compila *.java)
JVM
ejecuta
public class Hola {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("!Hola Mundo!");
}
}
public static void main(String[] args){
System.out.println("Hola Mundo");
}
La firma del método es su nombre y parámetros. No está permitido tener duplicados de firma en un mismo bloque/ámbito.
Si un método difiere de la firma de otro en los parámetros, se dice que está sobrecargado.
public static double suma(double a, double b) {
double suma = a + b;
return suma;
}
public static double suma(double a, double b) {
return a + b;
}
Dadas las coordenadas x e y del centro de una circunferencia (xc, yc) y de uno de sus puntos (xp, yp), debe implementar el cálculo del área de dicha circunferencia.
(xc, yc)
(xp, yp)
radio
Pitágoras
¿Qué ganamos con ellas?
MiClase
Otras
SubClase
hereda
Mundo
private
(no mod)
protected
public
package
toString()
Object
Coche
Vehiculo
tiene toString()
implementado toString()
Pariente más cercano
Mínimo existirá éste método
"Abuelo"
"Padre"
"Hijo"
Las dos variables apuntan al mismo objeto.
equals(obj)
Las variables pueden apuntar a objetos distintos pero los trataremos como si fueran iguales.
miVariable1
miVariable2
(valor)
miVariable1
miVariable2
Ejemplo jerarquía
Producto
id: String
nombre: String
descripción: String
Comerciable
getPrecio(): float
Identificable<T>
getId(): T
Nombrable
getNombre(): String
Coche
modelo: String
...
public List<Productos> catalogoVehiculos() { ... }
public boolean venderCoche(Coche coche, Cliente cliente) { ... }
// Para eliminar?
public List<VehiculoConRuedas> vehiculosDisponibles() { ... }
public String compararProducto(Coche coche1, Coche coche2) { ... }