Home Foros Foro dudas Foro de Java Clase coche y Usocoche

Clase coche y Usocoche

Viendo 3 entradas - de la 1 a la 3 (de un total de 3)
  • Autor
    Entradas
  • #17886

    maria del mar
    Participante

    Hola^^.¿Alguien tiene todos el codigo de la clase Coche y Uso_coche? Si es con comentarios mejor

    Creo que me falta algo pero los videos se mueve demasiado en la hoja de Eclipse y no puedo revisarlo

    #17934

    Marc
    Participante

    Hola Maria del Mar.
    Hace un año hice esto y puedo lo retocase con alguna prueba por mi cuenta, pero si te sirven los copio aquí:

    _______________________________________

    package poo;

     

    public class Coche { // especificaré en la clase las características comunes a todos los coches de esta clase

     

    /*con el ‘private’ encapsulo esa variable para que solo se pueda modificar en esta clase.

    y serán comunes para todos los objetos (coches) que se creen desde esta clase*/

     

    private int ruedas;

    private int largo;

    private int ancho;

    private int motor;

    private int peso_plataforma;

     

    /* ahora defino variables particulares que podrán variar en cada objeto con métodos setter/getter

    * las propiedades de los objetos solo deben poder modificarse con los métodos adecuados

    * sin acceder directamente a ellas*/

     

    private String color;

    private int peso_total;

    private boolean clima, cuero; //creo dos variables en la misma linea.

     

    //son variables (propiedades posteriores de objetos coches) no iniciadas.

     

     

    /* para definir estas utilizamos un «MÉTODO CONSTRUCCTOR». Método es una función.

    * Un método Constructor da un estado inicial a nuestras variables.

    * Para crear un «Método Contructor» lo hacemos mediante una ‘variable’ PUBLIC + NOMBRE.DE.LA.CLASE ()*/

     

    public Coche() {

    ruedas=4;

    largo=4000;

    ancho=1400;

    motor=1600;

    peso_plataforma=500;

    }

     

    /* 2 métodos para tener acceso a variables private de la clase public: Setters (definidores) * Getters (captadors)

    *   Setters: encargado de definir el valor de una propiedad (variable public private)

    *   Getters: destinado a proporcionar el valor de una propiedad

    *

    * El método Getter se escribe en la Clase Public Private

    *

    * Sintaxis Setter: public void (no devuelve ningun valor, por tanto no lleva return) nombre_método () {código}

    *

    * Sintasix Getter:   public tipo_dato_a_devolver nombre_método (){código + return}*/

     

     

    // CREACIÓN de un metodo GETTER

     

    public String dime_datos_generales() {

    return «La plataforma del vehículo tiene » + ruedas + » ruedas. » +

    «Mide » + largo/1000 + » metros de largo, con un ancho de » + ancho + » cms.» +

    » y un peso de plataforma de » + peso_plataforma + » Kg.»;

    }

     

    // CREACIÓN de un método SETTER

     

    public void establece_color(String color_coche){  //método SETTER

    // color=»azul»;  //por defecto todos los objetos serán azules.

    color =color_coche; //así cuando le doy un valor a ‘color_coche’ la guardo en color

    }

     

    public String dime_color(){  //método GETTER

    return «El color es » + color;

    }

     

    public void configura_asientos(String cuero) {  //SETTER

     

    if (cuero.equalsIgnoreCase(«si»)) { //este ‘cuero’ es la string de configura_asientos

    this.cuero=true; // con el this le decimos a java que este ‘cuero’ es la variable de la clase, booleana

    }else {

    this.cuero=false;

    }

    }

     

    public String dime_asientos() { //GETTER

     

    if(cuero==true){   /*con las variables de tipo BOOLEANAS, no es necesario poner el ==true,

    *el comparador if por defecto lo compara con true*/

    return «El coche tiene asientos de cuero»;

    }else{

    return «El coche tiene asientos de serie»;

    }

    }

     

    public void configura_clima (String clima) {  //SETTER

     

    if (clima.equalsIgnoreCase(«si»)) {

    this.clima=true;

    }else {

    this.clima=false;

    }

    }

     

    public String dime_clima()  {  // GETTER

     

    if (clima) {   // LEER COMENTARIO DEL IF(CUERO==TRUE)

    return «El coche tiene climatizados»;

    }else {

    return «En este coche vas a pasar calor»;

    }

    }

     

    //METODO SETTER+GETTER CONJUNTO, pero no es muy recomendable

     

    public String dime_peso_coche () {

     

    int peso_carroceria=500;   //función de SETTER

     

    peso_total=peso_plataforma+peso_carroceria;

     

    if (cuero==true) {peso_total=peso_total+50;}

    if (clima==true) {peso_total=peso_total+50;}

     

    return «El peso total del coche es » + peso_total + » Kg.»;  //función de GETTER

     

    }

     

    public int precio_coche() {

     

    int precio_final=10000;

     

    if (cuero==true) {precio_final+=500; }

    if (clima==true) {precio_final+=700; }

     

    return precio_final;

    }

    }

    _________________________________________

    package poo;

     

    import javax.swing.*;

     

    public class Uso_Coche {

     

    public static void main(String[] args) {

    // TODO Auto-generated method stub

     

    Coche Renault=new Coche(); //Instanciar una clase.  Esto es EJEMPLAR DE CLASE

     

    //System.out.println(«Este coche tiene «+ Renault.ruedas + » ruedas.»);

     

    /* Si llama a la variable ‘ruedas (método para el objeto Renault), da error pq es tipo Private

    * y solo tengo acceso a ella desde su propia clase

    *

    * 2 métodos para tener acceso a variables private de la clase public: Setters (definidores) * Getters (captadors)

    *

    *   Setters: encargado de definir el valor de una propiedad (variable public private)

    *   Getters: destinado a proporcionar el valor de una propiedad

    *

    * El método Getter se escribe en la Clase Public Private

    *

    * Sintaxis Setter: public void (no devuelve ningun valor, por tanto no lleva return) nombre_método () {código}

    *

    * Sintasix Getter:   public dato_a_devolver nombre_método (){código + return}

    */

     

    //System.out.println(Renault.dime_largo());

     

    // INSTANCIO NUEVO OBJETO COCHE

     

    Coche micoche=new Coche();

     

    //micoche.establece_color();  // Uso ‘color’ con método Setter

     

    System.out.println(micoche.dime_datos_generales());

     

    micoche.establece_color(JOptionPane.showInputDialog(«Introduce el color»)); // le cambio el color ‘pasando el nuevo parámetro

     

    System.out.println(micoche.dime_color()); // Llamo ‘color’ con método getter

     

    micoche.configura_asientos(JOptionPane.showInputDialog(«¿Quieres asientos de cuero?»));

     

    System.out.println(micoche.dime_asientos());

     

    micoche.configura_clima(JOptionPane.showInputDialog(«¿Quieres climatizador?»));

     

    System.out.println(micoche.dime_clima());

     

    System.out.println(micoche.dime_peso_coche());

     

    System.out.println(«El precio final del coche es: » + micoche.precio_coche() + » euros.»);

     

    }

     

    }

    _____________________________________________________________

    Un saludo.
    Marc

    #17947

    maria del mar
    Participante

    Muchas gracias ^^. Es que no es que sea un tema complejo pero con tanto codigo, es algo lioso y quiero tenerlo bien

    Mucho animo también con Java ^^, yo empiezo en nada DAW en  BCN y quiero ir con base ^^

Viendo 3 entradas - de la 1 a la 3 (de un total de 3)
  • Debes estar registrado para responder a este debate.