Académique Documents
Professionnel Documents
Culture Documents
utilizando
JAVA
Clase
Figura
x
despliega()
mueve()
Propiedad
nombre
Objeto
circulo
x
despliega()
mueve()
Mtodo
despliega()
Un Mtodo es un proceso abstracto y contiene un conjunto finito de instrucciones.
Es decir, un fragmento de cdigo al que se llama, acompaado de unos datos de entrada,
y produce una determinada salida. Para esto tenemos que indicar el tipo de los primitivos
de entrada, el tipo de los de salida, el nombre del mtodo y el trabajo que realizara.
[tipodatoSalida] [nombreMtodo] ([tipodatoEntrada] [nombredatoEntrada]) {
//Codigo del mtodo
return datoSalida;
}
int sumaCinco(int entrada) {
return entrada + 5;
}
Clase Automovil
class Automovil
{
// PROPIEDADES
String color ;
int velocidadMaxima ;
// MTODOS
void asignaColor(String _color)
{
color = _color;
}
String indicaColor()
{
return color;
}
}
Constructor
Figura
Figura()
Un Constructor es un mtodo pblico que lleva el mismo nombre de la clase
a la que pertenece.
String indicaColor()
{
return color;
}
}
class Autos
{
public static void main(String args[])
{
// OBJETOS DE LA CLASE Automovil USANDO EL CONSTRUCTOR
Automovil autoDeportivo = new Automovil("azul");
Automovil camioneta = new Automovil("rojo");
System.out.println("autoDeportivo color " + AutoDeportivo.indicaColor());
System.out.println("camioneta color " + Camioneta.indicaColor());
}
Sobrecarga de mtodos
Figura
Figura()
Figura(String)
Sobrecarga de mtodos
class Automovil
{
String color ;
Automovil()
{
color = "blanco";
}
Automovil(String _color)
{
color = _color;
}
void asignaColor(String _color)
{
color = _color;
}
String indicaColor()
{
return color;
}
}
class Autos
{
public static void main(String args[])
{
Automovil autoDeportivo = new Automovil("azul");
Automovil camioneta = new Automovil();
System.out.println("autoDeportivo color " + AutoDeportivo.indicaColor());
System.out.println("camioneta color " + Camioneta.indicaColor());
}
}
static cuenta
color
Automovil()
static Contador()
asignaColor()
indicaColor()
Las Propiedades y Mtodos de Clase se crean una sola vez en cada clase y
los comparten los objetos (instancias) de esa clase.
Se identifican porque los precede la palabra reservada static.
color
Automovil()
Automovil
static cuenta
asignaColor()
indicaColor()
autoDeportivo
static Contador()
color
Automovil()
asignaColor()
indicaColor()
class Automovil
{
String color ; // PROPIEDAD DE INSTANCIA
static int cuenta; // PROPIEDAD DE CLASE
// CONSTRUCTORES
Automovil()
{
color = "blanco";
cuenta++;
}
Automovil(String _color)
{
color = _color;
cuenta++;
}
// METODOS DE INSTANCIA
void asignaColor(String _color)
{
color = _color;
}
String indicaColor()
{
return color;
}
// METODO DE CLASE
static void contador()
{
System.out.println("Creadas "
+ cuenta + " instancias");
}
}
class Autos
{
public static void main(String args[])
{
// SE INVOCA AL METODO DE CLASE SIN CREAR OBJETO
Automovil.contador();
Automovil autoDeportivo = new Automovil();
// EL METODO DE CLASE INVOCADO DESDE UN OBJETO
autoDeportivo.contador();
Automovil camioneta = new Automovil("rojo");
camioneta.contador();
System.out.println("autoDeportivo color "
+ autoDeportivo.indicaColor());
System.out.println("camioneta color "
+ camioneta.indicaColor());
Automovil.contador();
}
}
Accesibilidad
Accesibilidad
Clases
Subclases
Paquete
Todas
public
si
si
si
si
protected
si
si
si
package
si
private protected
si
private
si
La misma
clase llama
al mtodo
si
si
La subclase
llama al
mtodo
Cualquier
clase llama
al mtodo
Composicin
Agregacin
Herencia
Persona
Alumno
Profesor
La Herencia es una relacin entre clases en donde la subclase clase hereda las
propiedades y mtodos de la superclase.
Se representa mediante relaciones es_un con una flecha con punta hueca
dirigida de la clase derivada a la superclase.
Sobreescritura
Figura
pinta()
Circulo
Triangulo
pinta()
Polimorfismo
Figura
x
y
color
pinta()
Circulo
Triangulo
radio
Cuadrado
lado
pinta()
pinta()
Isoceles
base
altura
pinta()
Polimorfismo
// DECLARA EL ARREGLO DE OBJETOS
Figura arreglo[] = new Figura[6];
// DETERMINA QUE OBJETO SE ALMACENA EN CADA ELEMENTO
arreglo[0] = new Circulo(20,30,10 ,Color.blue);
arreglo[1] = new Triangulo(50,220,Color.red);
arreglo[2] = new Circulo(200,100,40 ,Color.cyan);
arreglo[3] = new Cuadrado(120,40,30,Color.green);
arreglo[4] = new Triangulo(250,70,Color.gray);
arreglo[5] = new Isoceles(173 ,204 ,50 ,66
,new Color(0100 ,150 ,0xFF));
// LLAMA AL METODO pinta PARA CADA ELEMENTO APLICANDO POLIMORFISMO
for(int i=0; i < arreglo.length; i++)
arreglo[i].pinta();
Composicin
Automovil
Chasis
Motor
Llanta
Composicin
Motor
Automovil
Chasis
Llanta
Composicin
class Automovil
{
String marca ;
Motor motor ;
Chasis chasis ;
Llanta llanta[] = new Llanta[4];
Automovil(String _marca)
{
marca = _marca;
motor = new Motor(4);
chasis = new Chasis(azul);
for( int i = 0; i < llanta.length; i++ )
llanta[i] = new Llanta(deportiva);
}
void asignaMotor(Motor _motor)
{
motor = _motor;
}
}
Agregacin
Bosque
Arbol
Paquetes
Escuela
Alumno
Materia
Profesor
Salon