Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Definicin de Clases
Juan Pavn Mestras Dep. Ingeniera del Software e Inteligencia Artificial Universidad Complutense Madrid
Basado en el curso Objects First with Java - A Practical Introduction using BlueJ, David J. Barnes, Michael Klling
Cmo funciona?
El usuario mete dinero El usuario pulsa un botn para solicitar el billete
Contenido de la clase
Campos / Atributos
Almacenan valores de un objeto
Definen el estado del objeto
Tambin se conocen como variables de instancia En BlueJ se puede ver con inspect
public class TicketMachine { private int price; private int balance; private int total; Further details omitted. }
visibilidad
tipo
nombre
Constructores
Tienen el mismo nombre que la clase Sirven para inicializar un objeto
Asignan valores iniciales a las variables Pueden tener parmetros para estos valores
Sentencias de asignacin
Permiten almacenar valores en variables
Variable = expresin ;
Ejemplo: price = ticketCost;
Mtodos
Hay muchos tipos
Acceso Modificacin Acciones Constructores Destructores
Tienen
Cabecera (signatura): nombre, parmetros, valor de retorno Cuerpo (implementacin): conjunto de sentencias
En C++ se pueden declarar en archivos diferentes En Java se definen juntos
Mtodos de acceso
Proporcionan informacin sobre un objeto tipo del valor de retorno nombre
visibilidad
sentencia de retorno
10
Mtodos de modificacin
Tienen una estructura similar a los mtodos de acceso Pero sirven para cambiar el estado del objeto
Cambiando el valor de una o ms variables Utilizan normalmente sentencias de asignacin Suelen recibir parmetros de entrada
visibilidad
parmetro
11
Mtodos de impresin
Para imprimir en la salida estndar
System.out.print (String); System.out.println (String); // no acaba la lnea // lnea completa
public void printTicket() { // Simulate the printing of a ticket. System.out.println("##################"); System.out.println("# The BlueJ Line"); System.out.println("# Ticket"); System.out.println("# " + price + " cents."); System.out.println("##################"); System.out.println(); // Update the total collected with the balance. total = total + balance; // Clear the balance. balance = 0;
Juan Pavn Mestras Facultad de Informtica UCM, 2007-08
12
13
Sentencia condicional
public void insertMoney(int amount) { if(amount > 0) { balance = balance + amount; } else { System.out.println("Use a positive amount: " + amount); } }
14
Sentencia condicional
if keyword
if(perform some test) { Do these statements if the test gave a true result } else { Do these statements if the test gave a false result }
else keyword
15
Variables locales
Las atributos son un tipo de variable
Almacenan valores a lo largo de la vida del objeto Se pueden utilizar en el cdigo de la clase
16
Variables locales
variable local public int refundBalance() { int amountToRefund; amountToRefund = balance; balance = 0; return amountToRefund; }
No se especifica visibilidad
17
Resumen
El cuerpo de una clase consta de
Atributos (campos): almacenan valores que determinan el estado del objeto Constructores: inicializan los objetos Mtodos: implementan el comportamiento de los objetos
Variables
Campos (atributos): duran toda la vida del objeto Parmetros: para recibir valores en un mtodo o constructor Variables locales: para almacenar temporalmente algn valor
18