You are on page 1of 20

Clases y Objetos

Ramiro Estigarribia Canese

Un mundo de objetos
Existen en la naturaleza, en los negocios y en los
productos que usamos.
No es sorprendente que se proponga una visin
orientada a objetos para la creacin de software.
Es una abstraccin que modela
el mundo de forma tal que nos
ayuda a entenderlo mejor.

Por qu enfocar a objetos?


Las tecnologas de objetos estn sustituyendo a los
enfoques clsicos de desarrollo de software.
Por qu? La respuesta principal es la reutilizacin.

Reutilizacin x Naturaleza
Las tecnologas de objetos llevan a reutilizar.
La reutilizacin de componentes de software lleva a
un desarrollo de software ms rpido y a programas
de mejor calidad.
El software orientado a objetos es ms fcil de
mantener debido a que su estructura
es por naturaleza poco acoplada.

Clases y objetos
Comenzaremos con una analoga simple, para
ayudarle a comprender:
Suponga que desea conducir un automvil y, para
hacer que aumente su velocidad, debe presionar el
pedal del acelerador.
Qu debe ocurrir antes?
Antes de poder conducir un automvil: alguien
tiene que disearlo.
As como se pueden construir muchos autos a
partir del mismo dibujo de ingeniera, se pueden
construir muchos objetos a partir de la misma
clase.

Clases, objetos, mtodos y


variables de instancia
Un automvil empieza en forma de dibujos de
ingeniera, similares a los planos que se utilizan
para disear una casa.
El volante oculta los mecanismos que hacen que
el automvil gire.
Permite que personas sin conocimiento acerca de
cmo funcionan los motores puedan conducir.

Construir un Vehculo.
Desafortunadamente, no puede conducir un dibujo
de un auto.
Se debe construir a partir de los dibujos.
Un automvil tendr un pedal acelerador, pero an
as no es suficiente; el automvil no acelerar por
su propia cuenta, as que el conductor debe oprimir
el pedal del acelerador.
Para realizar una tarea en una aplicacin se
requiere un mtodo.

Atributos
Es una especificacin que define una propiedad de un
objeto o clase.
Un auto tiene muchos atributos como su color, el
nmero de puertas, la cantidad de gasolina en su
tanque y su velocidad actual.
Cuando usted conduce un automvil, estos
atributos siempre estn asociados con l.
Por ejemplo, cada conductor sabe cunta gasolina
tiene en su propio tanque, pero no cunta hay en
los tanques de otros automviles.

Qu son los Mtodos?


Los mtodos son las tareas que puede realizar una
clase.
En Java, empezamos por crear una unidad de
aplicacin llamada clase para alojar a un mtodo.
En una clase se proporcionan uno o ms mtodos.
Por ejemplo, una clase que representa a una
cuenta bancaria podra contener un mtodo para
depositar dinero en una cuenta, otro para retirar
dinero.

Llamar a un Mtodo
Cuando usted conduce un automvil, si oprime el
pedal del acelerador se enva un mensaje al
automvil para que realice una tarea.
De manera similar, se envan mensajes a un objeto.
cada mensaje se conoce como la llamada a un
mtodo, e indica a un mtodo del objeto que realice
su tarea.

Ejemplo:
Declaracin de una clase
// LibroNotas.java
// Declaracin de una clase con un mtodo.
public class LibroNotas
{
// muestra un mensaje de bienvenida
public void mostrarMensaje()
{
System.out.println( "Bienvenido al Libro de Notas!" );
} // fin del mtodo mostrarMensaje
} // fin de la clase LibroNotas

Ejemplo:
Declaracin de una clase
Como aprendimos en el captulo 2, la clase main
empieza la ejecucin de todas las aplicaciones.
La clase LibroNotas no es una aplicacin, ya que
no contiene a main.
Por lo tanto, si trata de ejecutar, recibir un
mensaje de error:
java.lang.NoSuchMethodError: main
Para corregir este problema, debemos declarar una
clase que contenga un mtodo main.

Objeto de la Clase:
LibroNotas
// TestLibroNotas.java
public class TestLibroNotas
{
//el mtodo main empieza la ejecucin del programa
public static void main( String args[] )
{
// crea un objeto Notas
LibroNotas miLibroNotas = new LibroNotas();
miLibroNotas.mostrarMensaje();
} // fin de main
} // fin de la clase PruebaLibroNotas

Ejemplo:
Depositar dinero en cuenta.
El siguiente ejemplo, permite actualizar el saldo de
un cliente.
Se utiliza una clase Cuenta.java, y Ejecutar.java,
en donde se encuentra el mtodo Main.

package cuenta;
public class Cuenta
{ private double saldo; //almacena el saldo
public Cuenta( double saldoInicial ) //constructor
{
if ( saldoInicial > 0.0 )
saldo = saldoInicial;
}
public void abonar( double monto )
{ saldo = saldo + monto; // suma el monto al saldo
} // devuelve el saldo de la cuenta
public double obtenerSaldo()
{ return saldo; // proporciona el valor de saldo
} // fin del mtodo obtenerSaldo
} // fin de la clase Cuenta

package cuenta;
import java.util.Scanner;
public class Ejecutar {
public static void main( String args[] )
{
Cuenta cuenta1 = new Cuenta( 50.00 ); // crea objeto Cuenta
Cuenta cuenta2 = new Cuenta( 10.00 ); // crea objeto Cuenta
// muestra el saldo inicial
System.out.printf("Saldo de cuenta1: $%.2f\n",cuenta1.obtenerSaldo());
System.out.printf("Saldo de cuenta2: $%.2f\n",cuenta2.obtenerSaldo());
Scanner entrada = new Scanner( System.in ); //Entrada de Datos
double montoDeposito; // deposita el monto
System.out.print( "Escriba el monto a depositar para cuenta1: " );
montoDeposito = entrada.nextDouble(); // obtiene entrada del usuario
System.out.printf( "\nSumando %.2f al saldo de
cuenta1\n\n",montoDeposito );
cuenta1.abonar( montoDeposito ); // suma al saldo de cuenta1
// muestra los saldos
System.out.printf( "Saldo de cuenta1: $%.2f\n",
cuenta1.obtenerSaldo());

Cuadro de Dilogo Visual


Los programas que hemos presentado hasta ahora
muestran su salida en la ventana de comandos.
Muchas aplicaciones utilizan ventanas, o cuadros
de dilogo para mostrar la salida.

Dialogo1.java
package dialogo1;
import javax.swing.JOptionPane;
public class Dialogo1
{
public static void main( String args[] )
{
JOptionPane.showMessageDialog( null, "Bienvenido" );
} // fin de main
} // fin de la clase Dialogo1

Dialogo2.java
package dialogo2;
import javax.swing.JOptionPane;
public class Dialogo2
{
public static void main( String args[] )
{
// pide al usuario que escriba su nombre
String nombre =
JOptionPane.showInputDialog( "Cual es su nombre?" );
String mensaje =
String.format( "Bienvenido, %s, al curso!", nombre
);
JOptionPane.showMessageDialog( null, mensaje );
} // fin de main

Concatenar Palabras.
package concatenar;
import javax.swing.JOptionPane;
public class Concatenar {
public static void main(String[] args) {
String var1= new String("Hola");
String var2= new String("mundo");
String frase= var1 + " " + var2;
JOptionPane.showMessageDialog( null, frase);
}}

You might also like