06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases...

12
Clases y objetos en Java Clases y objetos en Java

Transcript of 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases...

Page 1: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Clases y objetos en JavaClases y objetos en Java

Page 2: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 2

Clases y objetos en JavaClases y objetos en Java

• En Java las clases definen tipos.

• Los objetos son variables de algún tipo de clase.

• Ejemplo: String s = “hola mundo”;

• Existe una clase llamada String.

• s es un objeto de tipo String.

• La clase String ofrece servicios (métodos) para operar sobre strings.

Page 3: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 3

Clases y objetos en JavaClases y objetos en Java

• El programador invoca esos métodos para operar sobre s.

• ¿Dónde está la lista de métodos de la clase String?

• En el documento “Java™ Platform, Standard Edition 6. API Specification”.

• http://java.sun.com/javase/6/docs/api/

Page 4: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 4

Clases en JavaClases en Java

• Esqueleto de una clase

public class nombre {

lista atributos.

lista de métodos.

}

En rojo están las partes obligatorias.

Page 5: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 5

Objetos en JavaObjetos en Java

public class MiClase {

}

MiClase clase; // clase es un objeto de

// tipo MiClase

clase = new MiClase (); // Inicializa el objeto

Page 6: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 6

Algunas reglasAlgunas reglas

• Si la clase se llama “MiClase” entonces tiene que estar en un archivo llamado “MiClase.java”.

• Un programa en Java puede constar de varias clases (cada una en su propio archivo).

• Una clase es la clase principal y contiene el procedimiento main.

Page 7: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 7

Clase vueloClase vuelo

public class vuelo {

// Atributos

int numero_vuelo;

int hora_salida;

boolean a_tiempo;

String linea_aerea;

Page 8: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 8

Clase vueloClase vuelo

// métodos

// Constructor

vuelo (int n, int h, boolean t, String a)

{

numero_vuelo = n;

hora_salida = h;

a_tiempo = t;

linea_aerea = a;

}

Page 9: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 9

Clase vueloClase vuelo

// Cambia el numero de vuelo

public void cambiaVuelo (int n)

{

numero_vuelo = n;

}

Page 10: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 10

Clase vueloClase vuelo

// Regresar el número de vuelo

public int numVuelo ()

{

return numero_vuelo;

}

Page 11: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 11

Clase vueloClase vuelo

• Otros métodos:

• public int horaSalida() // regresa hora

• public void cambiaHoraSalida (int h) // cambia hora

• public boolean aTiempo () // ¿a tiempo?

• public void cambiaATiempo (boolean t) // cambia si está a tiempo o no

• public String linea () // regresa la línea aérea

• public void cambiaLinea (String linea) // cambia la línea aérea

Page 12: 06 Clases objetos Java - euler.mat.uson.mxeuler.mat.uson.mx/.../6-Clases-Objetos-Java.pdf · Clases y objetos en Java • En Java las clases definen tipos. • Los objetos son variables

Universidad de Sonora Programación Avanzada 12

Clase pruebaVueloClase pruebaVuelo

public class pruebaVuelo {

public static void main (String args[])

{

Vuelo v1 = new Vuelo (222, 9, false, “Patito Airlines”);

Vuelo v2 = new Vuelo (777, 12, true, “Quahog”);

v1.cambiaHora (17);

v2.cambiaVuelo (778);

}

}