SlideShare uma empresa Scribd logo
1 de 3
Baixar para ler offline
Una clase Simple.
Vamos a empezar nuestro estudio de la clase con un ejemplo sencillo. Aquí es una clase denominada
cuadro que define tres variables de instancia: anchura, altura y profundidad. Actualmente, cuadro no
contiene ningún método (pero algunos se agregarán pronto).

class Box {
double width;
double height;
double depth;
}

Como se indicó, una clase define un nuevo tipo de datos. En este caso, el nuevo tipo de datos se
denomina cuadro. Utilizará este nombre para declarar objetos de tipo cuadro. Es importante recordar
que una declaración de clase sólo crea una plantilla; no crea un objeto real. Así, el código anterior
no causa los objetos de tipo cuadro de existencia. Para crear realmente un objeto de cuadro, se
utiliza una instrucción como la siguiente: cuadro de mybox = new Box(); / / crear un objeto de cuadro
llamado mybox
Después de esta instrucción se ejecuta, mybox será una instancia de cuadro. De este modo,
dispondrá de realidad "física". Por el momento, no se preocupe sobre los detalles de esta
declaración. Una vez más, cada vez que se crea una instancia de una clase, se crea un objeto que
contiene su propia copia de cada variable de instancia definido por la clase. Por lo tanto, cada objeto
de cuadro contendrá sus propias copias de la anchura de las variables de instancia, altura y
profundidad. Para acceder a estas variables, se utiliza el operador de punto (.). El operador de punto
vincula el nombre del objeto con el nombre de una variable de instancia. Por ejemplo, para asignar
a la variable de ancho de mybox el valor 100, utilizaría la siguiente declaración:
mybox.width = 100;
Esta declaración indica al compilador que asignar la copia de ancho que está dentro de la mybox
objeto el valor de 100. En general, utilizar el operador de punto para acceder a las variables de
instancia y los métodos dentro de un objeto. Aquí es un completo programa que utiliza la clase Box:

/* A program that uses the Box class.
Call this file BoxDemo.java
*/
class Box {
double width;
double height;
double depth;
}
// This class declares an object of type Box.
class BoxDemo {
public static void main(String args[]) {
Box mybox = new Box();
double vol;
// assign values to mybox's instance variables
mybox.width = 10;mybox.height = 20;
mybox.depth = 15;
// compute volume of box
vol = mybox.width * mybox.height * mybox.depth;
System.out.println("Volume is " + vol);
}
}
Se debe consultar el archivo que contiene este programa BoxDemo.java, porque es el método
principal de () en la clase denominada BoxDemo, no la clase denominada cuadro. Cuando se compila
este programa, usted encontrará que se han creado los archivos .class dos, uno para el cuadro y
otro para BoxDemo. El compilador de Java pone automáticamente cada clase en su propio archivo
.class. No es necesario para el cuadro y la clase BoxDemo ser realmente en el mismo archivo de
origen. Cada clase se podría colocar en su propio archivo, llamado Box.java y BoxDemo.java,
respectivamente. Para ejecutar este programa, es necesario ejecutar BoxDemo.class. Al hacerlo, se
verá el siguiente resultado
Volume is 3000.0
Como se dijo anteriormente, cada objeto tiene sus propias copias de las variables de instancia. Esto
significa que si hay dos objetos de cuadro, cada uno tiene su propia copia de profundidad, el ancho
y el alto. Es importante comprender que los cambios a las variables de instancia de un objeto no
tener ningún efecto sobre las variables de instancia de otro. Por ejemplo, el siguiente programa
declara dos objetos de cuadro:

// This program declares two Box objects.
class Box {
double width;
double height;
double depth;
}
class BoxDemo2 {
public static void main(String args[]) {
Box mybox1 = new Box();
Box mybox2 = new Box();
double vol;
// assign values to mybox1's instance variables
mybox1.width = 10;
mybox1.height = 20;
mybox1.depth = 15;
/* assign different values to mybox2's
instance variables */
mybox2.width = 3;
mybox2.height = 6;
mybox2.depth = 9;
// compute volume of first box
vol = mybox1.width * mybox1.height * mybox1.depth;
System.out.println("Volume is " + vol);
// compute volume of second box
vol = mybox2.width * mybox2.height * mybox2.depth;
System.out.println("Volume is " + vol);
}
}

Aquí se muestra la salida producida por este programa: volumen es el volumen de 3000.0 es 162.0,
como puede ver, datos de mybox1 están completamente independientes de los datos contenidos
in mybox2.

Mais conteúdo relacionado

Semelhante a Una clase simple.

Semelhante a Una clase simple. (20)

Sobrecarga de constructores
Sobrecarga de constructoresSobrecarga de constructores
Sobrecarga de constructores
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Conceptos java
Conceptos javaConceptos java
Conceptos java
 
Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2
 
Lp2docclases
Lp2docclasesLp2docclases
Lp2docclases
 
Herencia y polimorfismo
Herencia y polimorfismoHerencia y polimorfismo
Herencia y polimorfismo
 
10-programacion-orientada-a-objetos.ppt
10-programacion-orientada-a-objetos.ppt10-programacion-orientada-a-objetos.ppt
10-programacion-orientada-a-objetos.ppt
 
Presentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoFPresentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoF
 
Manual boo
Manual booManual boo
Manual boo
 
Presentacion de clases en c#
Presentacion de clases en c#Presentacion de clases en c#
Presentacion de clases en c#
 
Tema2
Tema2Tema2
Tema2
 
JAVA OO - TEMA 01 - CLASES Y OBJETOS
JAVA OO - TEMA 01 - CLASES Y OBJETOSJAVA OO - TEMA 01 - CLASES Y OBJETOS
JAVA OO - TEMA 01 - CLASES Y OBJETOS
 
Polimorfismo ppt
Polimorfismo  pptPolimorfismo  ppt
Polimorfismo ppt
 
Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3
 
Evaluacion 3er parcial
Evaluacion 3er parcialEvaluacion 3er parcial
Evaluacion 3er parcial
 
UD2-ConceptosBasicos.pdf
UD2-ConceptosBasicos.pdfUD2-ConceptosBasicos.pdf
UD2-ConceptosBasicos.pdf
 
Poo
PooPoo
Poo
 
Programación ii presentación tema 5
Programación ii presentación tema 5Programación ii presentación tema 5
Programación ii presentación tema 5
 
Apunte paradigma orientado a objetos
Apunte paradigma orientado a objetosApunte paradigma orientado a objetos
Apunte paradigma orientado a objetos
 
Leguaje de programacion C#
Leguaje de programacion C#Leguaje de programacion C#
Leguaje de programacion C#
 

Mais de Manuel Alejandro Hernandez Sanchez

Mais de Manuel Alejandro Hernandez Sanchez (20)

Serialización personalizada
Serialización personalizadaSerialización personalizada
Serialización personalizada
 
Ejemplo
EjemploEjemplo
Ejemplo
 
Entrada
EntradaEntrada
Entrada
 
Ejemplo
EjemploEjemplo
Ejemplo
 
Tipos de excepciones
Tipos de excepcionesTipos de excepciones
Tipos de excepciones
 
Introducción
IntroducciónIntroducción
Introducción
 
Herencia
HerenciaHerencia
Herencia
 
Tipo estático y tipo dinámico
Tipo estático y tipo dinámicoTipo estático y tipo dinámico
Tipo estático y tipo dinámico
 
Introducción
IntroducciónIntroducción
Introducción
 
Uso de polimorfismo
Uso de polimorfismoUso de polimorfismo
Uso de polimorfismo
 
Enlace dinámico
Enlace dinámicoEnlace dinámico
Enlace dinámico
 
Clase base
Clase baseClase base
Clase base
 
Por qué java no soporta la sobre carga de operadores
Por qué java no soporta la sobre carga de operadoresPor qué java no soporta la sobre carga de operadores
Por qué java no soporta la sobre carga de operadores
 
Recolección de basura
Recolección de basuraRecolección de basura
Recolección de basura
 
Retorno de valores
Retorno de valoresRetorno de valores
Retorno de valores
 
Metodos de mensajes
Metodos de mensajesMetodos de mensajes
Metodos de mensajes
 
La destrucción del objeto
La destrucción del objetoLa destrucción del objeto
La destrucción del objeto
 
Acceso al objeto
Acceso al objetoAcceso al objeto
Acceso al objeto
 
Agregar un metodo que toma parametros
Agregar un metodo que toma parametrosAgregar un metodo que toma parametros
Agregar un metodo que toma parametros
 
Asignación de variables de referencia de objeto
Asignación de variables de referencia de objetoAsignación de variables de referencia de objeto
Asignación de variables de referencia de objeto
 

Una clase simple.

  • 1. Una clase Simple. Vamos a empezar nuestro estudio de la clase con un ejemplo sencillo. Aquí es una clase denominada cuadro que define tres variables de instancia: anchura, altura y profundidad. Actualmente, cuadro no contiene ningún método (pero algunos se agregarán pronto). class Box { double width; double height; double depth; } Como se indicó, una clase define un nuevo tipo de datos. En este caso, el nuevo tipo de datos se denomina cuadro. Utilizará este nombre para declarar objetos de tipo cuadro. Es importante recordar que una declaración de clase sólo crea una plantilla; no crea un objeto real. Así, el código anterior no causa los objetos de tipo cuadro de existencia. Para crear realmente un objeto de cuadro, se utiliza una instrucción como la siguiente: cuadro de mybox = new Box(); / / crear un objeto de cuadro llamado mybox Después de esta instrucción se ejecuta, mybox será una instancia de cuadro. De este modo, dispondrá de realidad "física". Por el momento, no se preocupe sobre los detalles de esta declaración. Una vez más, cada vez que se crea una instancia de una clase, se crea un objeto que contiene su propia copia de cada variable de instancia definido por la clase. Por lo tanto, cada objeto de cuadro contendrá sus propias copias de la anchura de las variables de instancia, altura y profundidad. Para acceder a estas variables, se utiliza el operador de punto (.). El operador de punto vincula el nombre del objeto con el nombre de una variable de instancia. Por ejemplo, para asignar a la variable de ancho de mybox el valor 100, utilizaría la siguiente declaración: mybox.width = 100; Esta declaración indica al compilador que asignar la copia de ancho que está dentro de la mybox objeto el valor de 100. En general, utilizar el operador de punto para acceder a las variables de instancia y los métodos dentro de un objeto. Aquí es un completo programa que utiliza la clase Box: /* A program that uses the Box class. Call this file BoxDemo.java */ class Box { double width; double height; double depth; } // This class declares an object of type Box. class BoxDemo { public static void main(String args[]) {
  • 2. Box mybox = new Box(); double vol; // assign values to mybox's instance variables mybox.width = 10;mybox.height = 20; mybox.depth = 15; // compute volume of box vol = mybox.width * mybox.height * mybox.depth; System.out.println("Volume is " + vol); } } Se debe consultar el archivo que contiene este programa BoxDemo.java, porque es el método principal de () en la clase denominada BoxDemo, no la clase denominada cuadro. Cuando se compila este programa, usted encontrará que se han creado los archivos .class dos, uno para el cuadro y otro para BoxDemo. El compilador de Java pone automáticamente cada clase en su propio archivo .class. No es necesario para el cuadro y la clase BoxDemo ser realmente en el mismo archivo de origen. Cada clase se podría colocar en su propio archivo, llamado Box.java y BoxDemo.java, respectivamente. Para ejecutar este programa, es necesario ejecutar BoxDemo.class. Al hacerlo, se verá el siguiente resultado Volume is 3000.0 Como se dijo anteriormente, cada objeto tiene sus propias copias de las variables de instancia. Esto significa que si hay dos objetos de cuadro, cada uno tiene su propia copia de profundidad, el ancho y el alto. Es importante comprender que los cambios a las variables de instancia de un objeto no tener ningún efecto sobre las variables de instancia de otro. Por ejemplo, el siguiente programa declara dos objetos de cuadro: // This program declares two Box objects. class Box { double width; double height; double depth; } class BoxDemo2 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); double vol; // assign values to mybox1's instance variables mybox1.width = 10; mybox1.height = 20; mybox1.depth = 15; /* assign different values to mybox2's instance variables */ mybox2.width = 3; mybox2.height = 6; mybox2.depth = 9;
  • 3. // compute volume of first box vol = mybox1.width * mybox1.height * mybox1.depth; System.out.println("Volume is " + vol); // compute volume of second box vol = mybox2.width * mybox2.height * mybox2.depth; System.out.println("Volume is " + vol); } } Aquí se muestra la salida producida por este programa: volumen es el volumen de 3000.0 es 162.0, como puede ver, datos de mybox1 están completamente independientes de los datos contenidos in mybox2.