0% encontró este documento útil (0 votos)
309 vistas10 páginas

JF 4 ProjectSolution Esp

Cargado por

Sanders Vazquez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
309 vistas10 páginas

JF 4 ProjectSolution Esp

Cargado por

Sanders Vazquez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

academy.oracle.

com

Conceptos fundamentales de Java


Sección 4: Creación de un proyecto de inventario
Solución del proyecto

Visión general
Este proyecto avanzará al ritmo del usuario en las secciones 4, 5, 6 y 7 del curso. Después de cada sección,
se podrán realizar más aportaciones hasta que se cree una aplicación Java completa para mantener el
inventario. En cada parte, tome como base la última parte de modo que se cumplan tanto los requisitos
anteriores como los nuevos. Incluya todas las partes en un paquete denominado inventario.

Cree un programa de inventario que se pueda utilizar para una serie de productos distintos (CD, DVD,
software, etc.).

Tema(s):

• Tipos de datos (sección 4.3)


• Creación de clases/objetos (sección 4.2)
• Campos/variables de instancia (sección 4.2)
• Constructores (sección 4.2)
• Métodos (getters/accessors, setters/mutators) (sección 4.2)
• Sobrecarga (sección 4.2)
• Clases principales/de prueba (sección 4.2)
• toString() (sección 4.4)

1. Para la primera parte del proyecto es necesario que reflexione sobre qué almacenará el sistema de
inventario.

a) Piense en productos específicos que sean aptos para almacenarse en un inventario (por
ejemplo, productos del hogar, centro educativo o lugar de trabajo; podrían pertenecer a las
siguientes categorías: materiales de oficina, CD de música, películas DVD o software).
Escriba una lista de al menos 6 productos que le gustaría almacenar en el sistema; este
proyecto se podría utilizar para almacenar una amplia variedad de productos.

b) Para cada uno de los productos que identifique, complete la siguiente tabla:

Atributo Datos de ejemplo

Nombre del producto (el valor que Greatest Hits


identificará el producto en el sistema).

Precio (este valor contiene el precio por el 9,99


que se venderá cada elemento).

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
2

Cantidad de unidades en existencias (este 25


valor indica la cantidad de productos
actualmente en existencias).

Número de elemento (se utiliza para 1


identificar el producto en el sistema).

Esta tabla proporciona una descripción del tipo de datos que desea almacenar de los atributos de
cada producto. Es muy útil y entenderá perfectamente los datos con los que está trabajando.

2. El siguiente paso es pensar en los tipos de datos correctos que se utilizarán para almacenar los valores en
el sistema. Para ello, agregue otra columna a la tabla que identificará el tipo de datos correcto para cada
valor que ha identificado.

Atributo Datos de ejemplo Tipo de dato

Nombre del producto Greatest Hits String

Precio 9,99 Double

Cantidad de unidades en 25 Integer


existencias

Número de elemento 1 Integer

3. Abra Eclipse y cree un proyecto denominado inventory.

4. Cree una clase de objeto denominada Product.

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
3

5. Agregue los siguientes campos de instancia privada (variables) mediante el uso de los tipos de datos que
ha identificado en la tarea 2:
a) Número de elemento
b) Nombre del producto
c) Cantidad de unidades en existencias
d) Precio de cada unidad

6. Agregue un comentario por encima de las declaraciones de campo de instancia que indique:
//Declaraciones de campo de instancia

7. Cree dos constructores:


a) Un constructor predeterminado sin parámetros que permitirá que el compilador inicialice los
campos en sus valores predeterminados. Agregue un comentario por encima del constructor
que explique el objetivo del código.

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
4

b) Sobrecargue el constructor predeterminado al crear un constructor con parámetros de los cuatro


campos de instancia de clase para que se puedan inicializar con valores de la clase de controlador. Se
debe asignar un nombre a los parámetros: number, name, qty, price. Debe utilizar la notación
this.instance_field_name para cuantificar el campo de instancia de objeto:

this.name = name;

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
5

8. Escriba los métodos getters/accessors y setters/mutators para las cuatro variables de la instancia. Agregue
comentarios sobre ellas para explicar su finalidad.

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
6

9. Sustituya el método toString() de la clase de objeto para mostrar una descripción de cada objeto
Product que incluye los valores del campo de instancia en el siguiente formato:

Item Number : 1
Name : Greatest Hits
Quantity in stock: 25
Price : 9.99

10. Cree una clase Java Main Class denominada ProductTester.

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
7

11. Cree e inicialice seis objetos Product basándose en la lista que ha creado en la tarea 1.

a) Dos de los productos deben crearse mediante el constructor predeterminado.

b) Los otros cuatro se deben crear con valores para los argumentos que coinciden con los
parámetros del constructor.

12. Con la clase ProductTester, visualice los detalles de cada producto en la consola.

13. Guarde el proyecto.

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
8

Solución de código:
Clase Object

package inventory;

public class Product {


//Declaraciones de campo de instancia
private int itemNumber; //valor único de identificación
private String name; //nombre del producto
private int qtyInStock; //cantidad en existencias
private double price; //precio del producto

//constructor predeterminado que inicializa variables de instancia


//los valores numéricos son 0 (cero) y los valores de cadena son "" (null)
public Product()
{
}//final del constructor

//constructor que permite la configuración de los valores iniciales para productos


public Product(int number, String name, int qty, double price)
{
this.itemNumber = number;
this.name = name;
this.qtyInStock = qty;
this.price = price;
}//final del constructor

//devuelve el valor actual de itemNumber


public int getItemNumber() {
return itemNumber;
}//final del método getItemNumber

//actualiza el valor de itemNumber


public void setItemNumber(int itemNumber) {
this.itemNumber = itemNumber;
}//final del método setItemNumber

//devuelve el valor actual del nombre


public String getName() {
return name;
}//final del método getName

//actualiza el valor del nombre


public void setName(String name) {
this.name = name;
}//final del método setName

//devuelve el valor actual de qtyInStock


public int getQtyInStock() {
return qtyInStock;
}//final del método getQtyInStock

//actualiza el valor de qtyInStock


public void setQtyInStock(int qtyInStock) {
this.qtyInStock = qtyInStock;

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
9

}//final del método setQtyInStock

//devuelve el valor actual del precio


public double getPrice() {
return price;
}//final del método getPrice

//actualiza el valor del precio


public void setPrice(double price) {
this.price = price;
}//final del método setPrice

//sustituir método toString() de la clase Object


//para permitir la visualización de cada objeto en la consola
public String toString()
{
return "\n\nItem Number : " + this.itemNumber
+ "\nName : " + this.name
+ "\nQuantity in stock: " + this.qtyInStock
+ "\nPrice : " + this.price;
}//final del método toString

}//final de clase Product

Clase Main (Prueba)


package inventory;

public class ProductTester {

public static void main(String[] args) {


//crear dos objetos con el constructor predeterminado
Product p1 = new Product();
Product p2 = new Product();

//crear cuatro objetos con valores para los argumentos


//esto usará el constructor sobrecargado
Product p3 = new Product(3, "Hot Shots", 75, 8.99);
Product p4 = new Product(4, "Brothers In Arms", 200, 7.75);
Product p5 = new Product(5, "Fantastic", 500, 9.50);
Product p6 = new Product(6, "The Party Album", 150, 4.00);

//visualizar la descripción de cada objeto como se describe en el


//método toString()
System.out.println(p1);
System.out.println(p2);
System.out.println(p3);
System.out.println(p4);
System.out.println(p5);
System.out.println(p6);

}//final del método main

}//final de clase ProductTaster

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.
10

Resultado:

Número de elemento : 0
Nombre : null
Cantidad en existencias : 0
Precio : 0,0

Número de elemento : 0
Nombre : null
Cantidad en existencias : 0
Precio : 0,0

Número de elemento : 1234


Nombre : Lápiz
Cantidad en existencias : 500
Precio : 0,25

Número de elemento : 1235


Nombre : Pluma
Cantidad en existencias : 250
Precio : 0,75

Número de elemento : 1236


Nombre : Rotulador
Cantidad en existencias : 100
Precio : 1,0

Número de elemento : 1237


Nombre : Tijeras
Cantidad en existencias : 10
Precio : 3,0

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás
nombres pueden ser marcas comerciales de sus respectivos propietarios.

También podría gustarte