Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
OBJETIVO
•Aterrizar los conceptos teóricos del
paradigma de programación orientada a
objetos al Lenguaje Java.
1 de 33
ORIENTACION A OBJETOS EN JAVA
AGENDA
•OBJETOS EN JAVA
•EL CICLO DE VIDA DE UN OBJETO
•CLASES
•METODOS
•DATOS MIEMBRO DE UNA CLASE
•CONTROL DE ACCESO A DATOS MIEMBRO
•CONSTRUCTORES
2 de 33
ORIENTACION A OBJETOS EN JAVA
Fruta manzana=new
Fruta();
Un objeto en el lenguaje
Java es una instancia de
una clase o de un
arreglo. Las referencias
de objetos son
“punteros” a esos
objetos, y una referencia
especial null, se refiere a
ningún objeto
3 de 33
ORIENTACION A OBJETOS EN JAVA
2. UTILIZACION
a) Manipulando los datos miembro
b) Manipulando las variables del objeto a través
de los métodos.
<referenciaObjeto>.<variable>
<referenciaObjeto>.nombreMetodo(listaArgumentos)
3. DESTRUCCION(a través del reciclador de memoria (garbage
collector) y la finalización del objeto. Un objeto es elegido por el
reciclador de memoria cuando no hay más referencias a ese objeto.
Antes que un objeto llegue a ser basura recopilada, el garbage collector
da la oportunidad de destruirse al objeto por si mismo a través de la
llamada al método finalize() del objeto.
4 de 33
ORIENTACION A OBJETOS EN JAVA
CLASES
5 de 33
ORIENTACION A OBJETOS EN JAVA
...
Cuerpo de la clase
...
}
7 de 33
ORIENTACION A OBJETOS EN JAVA
8 de 33
ORIENTACION A OBJETOS EN JAVA
EL CUERPO DE LA CLASE
Contiene dos secciones: declaraciones de las variables
(estado)y declaraciones de métodos (comportamiento).
DeclaracionClase{
declaracionVariablesMiembro;
declaracionMétodos
}
Ejemplo...
9 de 33
ORIENTACION A OBJETOS EN JAVA
EL CUERPO DE LA CLASE –
public class Fruta EJEMPLO
{
private int peso;
private int caloriasxgramo;
public Fruta()
{
peso=0;
caloriasxgramo=0;
}
public Fruta(int peso, int cal)
{
this.peso=peso;
caloriasxgramo=cal;
}
public int CalcularTotalCalorias()
{
return peso*caloriasxgramo;
}
public int getCalorias(){
return caloriasxgramo;
}
}
10 de 33
ORIENTACION A OBJETOS EN JAVA
DECLARACION DE VARIABLES
MIEMBRO
Como mínimo, la declaración miembro de una variable tiene dos componentes: el tipo
de la variable y su nombre:
<tipo> Nombre_variable;
11 de 33
ORIENTACION A OBJETOS EN JAVA
DECLARACION DE VARIABLES
MIEMBRO
EJEMPLO 1:
class Prueba{
final double AVOGADRO=6.02323;
transient int aleatorio;
volatile int contador;
static int a;
declaracionMetodos();
12 de 33
ORIENTACION A OBJETOS EN JAVA
DECLARACION DE VARIABLES MIEMBRO - EJEMPLO 2:
class UnEnteroX{
static private int x;
static public int getX(){
return x;
}
static public void setX(int nuevoX){
x=nuevoX;
}
}
...
UnEnteroX miX= new UnEnteroX();
UnEnteroX otroX= new UnEnteroX();
miX.setX(2);
miX.setX(3);
System.out.println(“miX.X :“ + miX.getX());
System.out.println(“OtroX.X :“ + otroX.getX());
UnEntero.setX(1);
System.out.println(“Un entero :“ + UnEnteroX.getX());
13 de 33
ORIENTACION A OBJETOS EN JAVA
DECLARACION DE UN METODO
Como mínimo la declaración de un método debe tener el nombre
del método y el valor retornado, así:
tipoRetornado nombreMetodo(){
...
}
DECLARACION DE UN METODO
La declaración general de un método es la siguiente:
[especificadorAcceso][static][abstract][final][native][sincronized]
tipoRetornado nombreMetodo([]) [throws ListaExcepciones]
PASAR INFORMACION A UN
METODO
Tipos de parámetros
En Java se puede pasar a un método cualquier tipo de argumento válido,
esto incluye datos simples (float, double, int, etc) tipos de datos
compuestos (objetos y arreglos), ejemplo:
16 de 33
ORIENTACION A OBJETOS EN JAVA
17 de 33
ORIENTACION A OBJETOS EN JAVA
Ejemplo.
class Alpha{
private int varPrivate;
private void metodoPrivate(){
System.out.println(“Método Privado“);
}
}
18 de 33
ORIENTACION A OBJETOS EN JAVA
class Alpha{
private int varPrivate;
boolean esIgualA(Alpha otroAlpha){
if (this.varPrivate==otroAlpha.varPrivate)
return true;
else
return false;
}
}
19 de 33
ORIENTACION A OBJETOS EN JAVA
20 de 33
ORIENTACION A OBJETOS EN JAVA
Package Greek;
class Gamma{
void accesoMetodo(){
Alpha a= new Alpha();
a.varProtected=10;//LEGAL
a.metodoProtected(); //LEGAL
}
}
21 de 33
ORIENTACION A OBJETOS EN JAVA
Package Latin;
import Greek.*;
class Delta extends Alpha{
void accesoMetodo(Alpha a, Delta d){
a.varProtected=10;// ILEGAL
d.varProtected=10;//LEGAL
a.metodoProtected(); // ILEGAL
d.metodoProtected(); // LEGAL
}
}
22 de 33
ORIENTACION A OBJETOS EN JAVA
Acceso Public (Públic)
23 de 33
ORIENTACION A OBJETOS EN JAVA
import Greek.*;
package Roman;
Class Beta{
void accesoMetodo(){
Apha a=new Alpha();
a.varPublic=10; // LEGAL
a.metodoPublic();// LEGAL
}
}
24 de 33
ORIENTACION A OBJETOS EN JAVA
25 de 33
ORIENTACION A OBJETOS EN JAVA
Package Greek;
class Alpha{
int varPackçage;
void metodoPackage{
System.out.println(“Método de acceso a Paquete“);
}
}
Package Greek;
Class Beta{
void accesoMetodo(){
Apha a=new Alpha();
a.varPackage=10; // LEGAL
a.metodoPackage();// LEGAL
}
}
26 de 33
ORIENTACION A OBJETOS EN JAVA
MODIFICADORES DE ACCESO
CONCLUSION
27 de 33
ORIENTACION A OBJETOS EN JAVA
CONSTRUCTORES
28 de 33
ORIENTACION A OBJETOS EN JAVA
CONSTRUCTORES EJEMPLO
class animal{
int edad;
String nombre;
public animal(){
edad=0;nombre=“”;
}
public animal(int _edad, String _nombre){
edad = _edad;
nombre = _nombre;
}
public void nace(){
System.out.println("Hola mundo");
}
public void get_nombre(){
System.out.println(nombre);
}
public void get_nombre(int i){
System.out.println(nombre +" " +edad);
}
public void get_edad(){
System.out.println(edad);
}
}
29 de 33
ORIENTACION A OBJETOS EN JAVA
Constructores - Modificadores
de acceso
El método finalize()
protected void finalize() throws throwable
31 de 33
ORIENTACION A OBJETOS EN JAVA
Protected void finalize() throws throwable{
if(unArchivo!=null){
unArchivo.close();
unArchivo=null;
}
}
}
32 de 33
UML - Diagrama de Clases
33 de 33