Вы находитесь на странице: 1из 42

Java

Programacin Orientada a Objetos


Introduccin a Java
Java, programacin orientada a objetos

2 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Fundamentos de Java
Java es un lenguaje de programacin de alto nivel
En java se puede desarrollar aplicaciones stand alone

3 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Fundamentos de Java
En Java se pueden crear aplicaciones mediante ventanas
Con Java se pueden hacer pginas WEB
Java es multiplataforma y por lo tanto, es complemente
independiente del sistema operativo con el que se trabaje, es
decir, el cdigo escrito con Java NO CAMBIA sin importar el
sistema operativo
Java fue desarrollado por Sun Microsystems en 1991
Su primer nombre fue OAK

4 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Caractersticas de Java
Seguro
Multiplataforma
Utiliza hilos (multiprocesamiento)
Se parece al lenguaje C
Popular en el mundo
Potente
Orientado a objetos
Tiene mquina virtual
Tiene recolector de basura

5 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Caractersticas de Java
Diferentes campos aplicativos
Portable
Sencillo
Robusto. Verifica errores en tiempo de compilacin como de
ejecucin
Interpretado. Puede ser ejecutado directamente el cdigo
objeto
No permite la multiherencia directamente
Java es libre de distribucin (Gratuito)

6 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Interaccin Java S.O.

Compilador Interprete
(Unix) (Unix)
Compilador Bytecode de Interprete
Java
(Mac) Java (Mac)
Compilador Interprete
(Windows) (Windows)

7 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Mquina Virtual
Es un software que interpreta instrucciones para cualquier
mquina sobre la que est corriendo y que permite, una vez
instalado, que una misma aplicacin pueda funcionar en un
PC o en un MAC sin tener que tocarla(Joyanes, 2003).

MQUINA VIRTUAL
PARA LINUX

MQUINA VIRTUAL
PARA WINDOWS

8 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Instalacin de Java
PRIMERO. Para ejecutar aplicaciones de Java se requiere la
mquina virtual
Archivo: j2sdk-1_4_2_05-windows-i586-p.exe

SEGUNDO. Para crear programas en Java puede utilizar el


editor (IDE) NetBeans cuyo creador es Sun Microsystems
Archivo: netbeans-3_6-windows.exe

Ambos archivos se descargan gratuitamente desde:


http://www.sun.com.mx
9 Elabor: Ing. Juan Eduardo de la Rosa Oliva
Clases y Objetos
Java, programacin orientada a objetos

10 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Programacin Orientada a objetos
La programacin orientada a objetos conocida como POO
busca representar todos los elementos de un problema como
objetos con atributos, propiedades y eventos (Eckel, 2002).

ANTES: +

AHORA: CARRO CASA ANIMAL

11 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Clases y objetos

12 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Clases
Una clase es un contenedor de uno o ms datos junto a las
operaciones de manipulacin de dichos datos (funciones o
mtodos), o bien, es una plantilla para hacer objetos.

13 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Objetos
Son elementos del espacio del problema (Eckel, 2002, p.
2), o bien, un objeto es una entidad que contiene los
atributos que describen el estado de un objeto del
mundo real y acciones que se asocian con el objeto
del mundo real (Joyanes, 2003, p. 578). Adems los
objetos tienen una entidad propia, y se definen y manejan
mediante 3 aspectos: mtodos, propiedades y eventos(Lpez,
2007, p. 108).
Un objeto es la copia fiel de una clase

14 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Trmino Instanciar
Instanciar se refiere a la accin de crear una copia fiel de una
clase en la RAM para crear un nuevo objeto.

RAM
INSTANCIANDO UNA CLASE
OBJETO
copiando

CLASE

15 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Atributos
Atributo, campo o propiedad. Denominado tambin dato
miembro, es un objeto de cualquier tipo (Eckel, 2002, p.
62)o algn tipo primitivo de datos con el que se puede
comunicar a travs de su referencia en memoria. Por otra
parte, Lpez define a las propiedades como las
caractersticas de un objeto en concreto(Lpez, 2007).

16 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Tipos de atributos
Los tipos de atributos se dividen en 2 categoras:
Tipos de referencia. Son aquellos que se comportan como
objetos

Tipos de valor. Son aquellos que se comportan como tipos


escalares o numricos (Tipos de datos).

17 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Tipos de datos de valor
PREFIJO TIPO EJEMPLO
b boolean aRespuesta
c char bInicial
d double dDato
f float fNumero
i int iEdad
l long lCuenta
S String sNombre

18
void
Elabor: Ing. Juan Eduardo de la Rosa Oliva
Caracteres especiales
DESCRIPCIN REPRESENTACIN
Barra invertida \\
Continuacin \
Retroceso \b
Retorno de carro \r
Tabulador horizontal \t
Lnea nueva (Enter) \n
Comillas simples (apostrofe) \

19
Comillas dobles
Elabor: Ing. Juan Eduardo de la Rosa Oliva
\
Operadores aritmticos
OPERADOR DESCRIPCIN
+ Suma
- Resta
* Multiplicacin
/ Divisin
% Mdulo

20 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Operadores lgicos
OPERADOR SIGNIFICADO
&& AND
|| OR
! NOT

21 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Operadores relacionales
OPERADOR SIGNIFICADO
> Mayor que
< Menor que
== Igual que
>= Mayor o igual que
<= Menor o igual que
!= Distinto que

22 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Mtodos
Mtodo o funcin miembro. Las funciones de un objeto son
el nico medio de acceder a los datos privados de un
objeto(Joyanes, 2003, p. 576) y son procedimientos o
acciones que cambian el estado de un
objeto (Joyanes, 2003, p. 578), o bien, son funciones
especficas que cada objeto puede llevar a cabo (Lpez,
2007, p. 108).

23 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Construccin de clases
Java, programacin orientada a objetod

24 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Sintaxis de una clase
[<modificador>] class <NombreClase> [extends
<NombreSuperClase>] [implements <NombreInterfaz>]
[,NombreInterfaz2,] {

Ejemplo:
public class Main(){

25 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Sobrecarga de mtodos
La sobrecarga de mtodos es la capacidad de exponer varios
mtodos con el mismo nombre pero con diferentes
argumentos (Balena, 2007, p. 20). Ejemplo:

public void moverPersona( Objetivo p ){


}

public void moverPersona( int x, int y ) {


}

26 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Modificadores de clases
Los modificadores proveen informacin adicional de la forma
en que la clase va a ser tratada, los cuales pueden ser:
public. Modificador de acceso que indica que la clase es
accesible de forma pblica.
abstract. Modificador que indica que la clase es abstracta y
por tanto, no es instanciable.
final. Modificador que indica que la clase no puede ser
subclasificable, es decir, una clase que no se puede heredar.

27 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Modificadores de los atributos
Modificador Misma clase Clase hija Paquete Resto del
mundo
private X
protected X X X
public X X X X
package X X

28 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Miembros estticos
Los miembros de una clase se refiere a los atributos de una clase.
Las clases pueden exponer dos tipos diferentes de miembros: de
instancia y estticos (Balena, 2007, p.24).
Para crear un miembro esttico aada el modificador static en el
atributo de la clase.
Ejemplo: La clase Persona slo expone miembros de instancia, lo que
significa que habr un valor diferente de los miembros Nombre y
Apellidos para cada objeto instanciado. Sin embargo, supngase
que se desea llevar un control de cuntas personas se han
instanciado. Es evidente que este valor no es una propiedad de
objetos individuales; en cambio, est relacionado con la propia
clase Persona y, por lo tanto debe definirse como esttico.

29 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Constructor de una clase
Los constructores son mtodos especiales que se invocan cuando un
cliente crea una instancia de la clase. Los constructores de una
clase se deben nombrar exactamente como se nombre la clase que
lo contiene. Ejemplo
public class Persona {
public Persona(){
//ESTO ES UN CONSTRUCTOR
}
}
Los constructores se pueden sobrecargar, y es posible que una clase
tenga mltiples constructores, aunque si omite el constructor, Java
crea automticamente un constructor predeterminado.

30 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Diseo de interfaces grficas
Java, programacin orientada a objetos

31 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Herencia

32 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Herencia
La herencia es implantar la relacin que existe entre 2 entidades
en la realidad, o bien es la propiedad que permite a los
objetos ser construidos a partir de otros objetos (Joyanes,
2003, p. 593). Ejemplo:

public class Persona extends Humano {


}

33 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Herencia
Caracterstica
AyB

A, B y C A, B y E

A, B y C A, B, C y D A, B, E y F A, B y C

34 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Evolucin de la GUI

Stand AWT Swing


alone

System java.awt.Button javax.swing.Jbutton


java.awt.Frame javax.swing.JFrame

35 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Referencias al objeto actual mediante
this
En un mtodo la referencia this puede utilizarse de forma implcita y
explcita para hacer referencia a las variables de una instancia y otro
mtodos del objeto en el cual se haya llamado el mtodo.
Ejemplo:
public class Editor extends javax.swing.JFrame{
public Editor(){
this.setSize(500, 500);
this.setDefaultCloseOperation(2);
this.setResizable(false);
this.setLayout(null);
this.setVisible(true);
}
}

36 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Clases abstractas
Una clase abstracta es una clase que no puede ser instanciada.
Ejemplos: Math, JOptionPane, System, String

public abstract class Dibujar{


public void dibujarCirculo(){
}
public static void dibujarCuadrado(){
}
}

37 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Interfaces
Una interfaz se utiliza generalmente en lugar de una clase
abstracta cuando no hay una implementacin predeterminada
que heredar (Deitel, 2004, p. 417).
Java no permite heredar de ms de una superclase, pero s
permite que una clase herede de una superclase e
implemente interfaces Deitel, 2004, p. 418).
Las interfaces nicamente definen la estructura de cmo
debe ir constituida una clase.

38 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Eventos
Evento. Son sucesos que pueden llegar a conducirse o
no (Lpez, 2007, p. 108). Un evento es un suceso que ha
ocurrido y que ha sido registrado.

39 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Eventos

MouseListener KeyListener

ActionListener MouseMotionListener

java.awt.event

40 Elabor: Ing. Juan Eduardo de la Rosa Oliva


UML
Java, programacin orientada a objetos

41 Elabor: Ing. Juan Eduardo de la Rosa Oliva


Notacin OML
Esta notacin es una representacin preliminar de una clase
de forma grfica.

42 Elabor: Ing. Juan Eduardo de la Rosa Oliva

Вам также может понравиться