Giter Club home page Giter Club logo

awakelab-tiendaelectrodomesticos's Introduction

AwakeLab-TiendaElectrodomesticos

Diagrama UML

Crear una superclase llamada Electrodoméstico con las siguientes características:

  • Sus atributos son precio base, color, consumo energético (letras entre A y F) y peso. Indica que se podrán heredar.

  • Por defecto, el color será blanco, el consumo energético será F, el precioBase es de $100.000 y el peso de 5 kg. Usar constantes para ello.

  • Los colores disponibles son blanco, negro, rojo, azul y gris. No importa si el nombre está en mayúsculas o en minúsculas.

  • Los constructores que se implementarán serán

    • Un constructor por defecto
    • Un constructor con el precio y peso. El resto por defecto
    • Un constructor con todos los atributos
  • Los métodos que implementara serán:

    • Métodos get de todos los atributos.
    • comprobarConsumoEnergetico(char letra): comprueba que la letra es correcta, sino es correcta usara la letra por defecto. Se invocará al crear el objeto y no sera visible.
    • comprobarColor(String color): comprueba que el color es correcto, sino lo es usa el color por defecto. Se invocará al crear el objeto y no será visible.
    • precioFinal(): según el consumo energético, aumentara su precio, y según su tamaño también.

Crearemos una subclase llamada Lavadora con las siguientes características:

  • Su atributo es carga, además de los atributos heredados.

  • Por defecto, la carga es de 5 kg. Usa una constante para ello.

  • Los constructores que se implementarán serán:

    • Un constructor por defecto.
    • Un constructor con el precio y peso. El resto por defecto.
    • Un constructor con la carga y el resto de atributos heredados. Recuerda que debes llamar al constructor de la clase padre.
  • Los métodos que se implementara serán:

    • Método get de carga.
    • precioFinal():, si tiene una carga mayor de 30 kg, aumentara el precio 50 €, sino es así no se incrementara el precio. Llama al método padre y añade el código necesario. Recuerda que las condiciones que hemos visto en la clase Electrodoméstico también deben afectar al precio.

Crearemos una subclase llamada Televisión con las siguientes características:

  • Sus atributos son resolución (en pulgadas) y sintonizador TDT (booleano), además de los atributos heredados.

  • Por defecto, la resolución será de 20 pulgadas y el sintonizador será false.

  • Los constructores que se implementarán serán:

    • Un constructor por defecto.
    • Un constructor con el precio y peso. El resto por defecto.
    • Un constructor con la resolución, sintonizador TDT y el resto de atributos heredados. Recuerda que debes llamar al constructor de la clase padre.
  • Los métodos que se implementara serán:

    • Método get de resolución y sintonizador TDT.
    • precioFinal(): si tiene una resolución mayor de 40 pulgadas, se incrementara el precio un 30% y si tiene un sintonizador TDT incorporado, aumentara 50 €. Recuerda que las condiciones que hemos visto en la clase Electrodoméstico también deben afectar al precio.

Ahora crea una clase ejecutable que realice lo siguiente:

  • Crea un array de Electrodomésticos de 10 posiciones.

  • Asigna a cada posición un objeto de las clases anteriores con los valores que desees.

  • Ahora, recorre este array y ejecuta el método precioFinal ().

  • Deberás mostrar el precio de cada clase, es decir, el precio de todas las televisiones, por un lado, el de las lavadoras por otro y la suma de los Electrodomésticos (puedes crear objetos Electrodoméstico, pero recuerda que Televisión y Lavadora también son electrodomésticos). Recuerda el uso operador instanceof.

Por ejemplo, si tenemos un Electrodoméstico con un precio final de 300, una lavadora de 200 y una televisión de 500, el resultado final será de 1000 (300+200+500) para electrodomésticos, 200 para lavadora y 500 para televisión.

awakelab-tiendaelectrodomesticos's People

Contributors

rhacs avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.