Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Dan_SB

Páginas: 1 ... 8 9 10 11 12 [13] 14
241
El código completo, aquí:

Clase salonCasa

Código: [Seleccionar]
package Home;

public class SalonCasa {
    private int numeroDeTelevisores;
    private String tipoSalon;
   
    public SalonCasa(){
        numeroDeTelevisores = 0;
        tipoSalon = "desconocido";
    }
   
    public void setNumeroDeTelevisores(int ingresoNumeroDeTelevisores){
        numeroDeTelevisores = ingresoNumeroDeTelevisores;
    }
   
    public void setTipoSalon(String ingresoTipoSalon){
        tipoSalon = ingresoTipoSalon;
    }
   
    public int getNumeroDeTelevisores(){
        return numeroDeTelevisores;
    }
   
    public String getTipoSalon(String ingresoTipoSalon){
        return tipoSalon;
    }
}

Clase CocinaCasa:

Código: [Seleccionar]
package Home;

public class CocinaCasa {
    private boolean esIndependiente;
    private int numeroDeFuegos;
   
    public CocinaCasa(){
        esIndependiente = false;
        numeroDeFuegos = 0;
    }
   
    public void setEsIndependiente(boolean ingresoIndependiente){
        esIndependiente = ingresoIndependiente;
    }
   
    public void setNumeroDeFuegos(int ingresoNumeroDeFuego){
        numeroDeFuegos = ingresoNumeroDeFuego;
    }
   
    public boolean getEsIndependiente(){
        return esIndependiente;
    }
   
    public int getNumeroDeFuegos(){
        return numeroDeFuegos;
    }
}

Clase Casa:

Código: [Seleccionar]
package Home;

public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa(){
        superficie = 0;
        direccion = "Desconocido";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }
   
    public void setSuperficie(double ingresoSuperficie){
        superficie = ingresoSuperficie;
    }
   
    public void setDireccion(String ingresoDireccion){
        direccion = ingresoDireccion;
    }
   
    public void setSalonCasa(SalonCasa objetoSalon){
       objetoSalon = new SalonCasa();
       String data = "";
       salonCasa.setNumeroDeTelevisores(objetoSalon.getNumeroDeTelevisores());
       salonCasa.setTipoSalon(objetoSalon.getTipoSalon(data));
    }
   
    public void setCocina(CocinaCasa Cocinas){
        Cocinas = new CocinaCasa();
        cocina.setEsIndependiente(Cocinas.getEsIndependiente());
        cocina.setNumeroDeFuegos(Cocinas.getNumeroDeFuegos());
    }
   
    public double getSuperficie(){
        return superficie;
    }
   
    public String getDireccion(){
        return direccion;
    }
   
    public SalonCasa getSalonCasa(){
        return salonCasa;
    }
   
    public CocinaCasa getCocina(){
        return cocina;
    }
}

Clase main:

Código: [Seleccionar]
package Home;

public class Main {
    public static void main(String[]args){
        Casa casita;
        SalonCasa salonsito;
        casita = new Casa();
        casita.setDireccion("Colon");
        casita.setSuperficie(100.000);
        casita.setSalonCasa();
        casita.setCocina();
        System.out.println(casita.getDireccion());
        System.out.println(casita.getSuperficie());
        System.out.println(casita.getSalonCasa());
        System.out.println(casita.getCocina());
    }
}

Muchas gracias por su atención!

242
Hola a todos

Hoy anduve probando esto del this... y según vi con esto puedes inicializar las variables en el constructor sin estar escribiendo pepe = "grande", edad = 24, cedula = "2-234-123". . .

Citar
public class Deposito {   

    //Campos de la clase
    private float diametro;
    private float altura;
    private String idDeposito;

    //Constructor sin parámetros auxiliar
    public Deposito () { //Lo que hace es llamar al constructor con parámetros pasándole valores vacíos
        this(0,0,"");            } //Cierre del constructor


Aqui veo que se inicializa las variablels diametro, altura y idDeposito ...  lo veo bastante util para no tener que estar escribiendo tantas cosas.

Viene la duda.

Quize realizar una prueba, hice esta clase  Profesor_primaria:

Código: [Seleccionar]
package Prof;

public class Profesor_primaria {
    private String nombre, apellido, materia;
    private int edad;
   
    public Profesor_primaria(){
        this("", "", "", 0); 
    }
   
    public void setNombre(String vNombre){
        nombre = vNombre;
    }
   
    public void setApellido(String vApellido){
        apellido = vApellido;
    }
   
    public void setEdad(int vEdad){
        edad = vEdad;
    }
   
    public void setMateria(String vMateria){
        materia = vMateria;
    }
   
    public String getNombre(){
        return nombre;
    }
   
    public String getApellido(){
        return apellido;
    }
   
    public int getEdad(){
        return edad;
    }
   
    public String getMateria(){
        return materia;
    }
}

En la linea del this, pensé que no me daría problemas, pero me suelta un error. Compare el código del capitulo con mi código, busque cual podía ser el problema pero no pude encontrarlo.

Quizás no funcione para eso... o quizás si. ¿Como funciona el this?, ¿Abre escrito mal algo?.

243
Muy buenas noches toni..

Curiosamente yo intente el método 2, el mismo que dices, no tengo idea si estará correcto o no...

Código: [Seleccionar]
public void setSalonCasa(SalonCasa objetoSalon){
       objetoSalon = new SalonCasa();
       String data = "";
       salonCasa.setNumeroDeTelevisores(objetoSalon.getNumeroDeTelevisores());
       salonCasa.setTipoSalon(objetoSalon.getTipoSalon(data));
    }
   
    public void setCocina(CocinaCasa Cocinas){
        Cocinas = new CocinaCasa();
        cocina.setEsIndependiente(Cocinas.getEsIndependiente());
        cocina.setNumeroDeFuegos(Cocinas.getNumeroDeFuegos());
    }

Escrito el codigo ese que menciono alex tal como esta, me suelta un error... cuando escribo dentro del parentesis del setTipoSalon "objetoSalon.getTipoSalon()" me suelta este mensaje:



Solucione este inconveniente declarando una variable String data ... y lo coloque como parámetro.

Citar
public void setSalonCasa (SalonCasa objetoSalon) {
  salonCasa = new SalonCasa();
   salonCasa.setNumeroDeTelevisores(objetoSalon.getNumeroDeTelevisores);
   salonCasa.setTipoSalon(objetoSalon.getTipoSalon);
    }

No se porque se ejecuta esto en esta linea, pensé que salonCasa ya se habia ejecutado aquí al crearle el constructor a la clase Casa:

Citar
public Casa(){
        superficie = 0;
        direccion = "Desconocido";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }

Supuse yo que se quería crear el objeto del parámetro "objetoSalon", así que hice el cambio.

El segundo método (setCocina) no dio problemas... quise ejecutar una prueba. Este era mi main anterior con los setters y getters que entregue:

Código: [Seleccionar]
public class Main {
    public static void main(String[]args){
        Casa casita;
        casita = new Casa();
        casita.setDireccion("Colon");
        casita.setSuperficie(100.000);
        casita.setSalonCasa("mansion",4);
        casita.setCocina(true, 4);
        System.out.println(casita.getDireccion());
        System.out.println(casita.getSuperficie());
        System.out.println(casita.getSalonCasa());
        System.out.println(casita.getCocina());
    }
}

Todo bien, normal, se me hacia muy fácil cargarle datos. Pero ahora viene la pregunta:



¿Como usaria el setSuperficie y el setCocina?

Me exige un objeto como parámetro en cada set...

Agradezco muchísimo su ayuda :)

244
Buenas!

En el ejercicio de este capitulo, se trata de contestar preguntas. El enunciado es el siguiente:

Crea un objeto de tipo Combinador y prueba a ejecutar los dos métodos disponibles pasando distintos parámetros: cadenas con más de tres caracteres, una cadena con más de tres y otra con menos de tres y ambas con menos de tres caracteres. Fíjate en el resultado que ofrece el método CombinadoSiempre cuando se le pasan como parámetros dos cadenas vacías. ¿Te parece lógico el resultado?
En la clase tenemos definidos dos atributos o campos. ¿Tienen utilidad conocida a la vista del código de la clase? ¿Se usan en los métodos que tenemos definidos?


Bueno. . . aquí vamos:

Código: [Seleccionar]
package Combinacion;

public class Fusion {
    public Fusion(){} 
   
    public String pegate(String valor1, String valor2){
         if (valor1.length() >= 3 && valor2.length() >= 3){
         String combinacion = valor1.substring(0, 3) + " " + valor2.substring(0, 3);
         return combinacion;   
         }
         else { return "No aporta cadenas válidas"; }       
    }
   
    public String CombinadoSiempre (String valor_texto1, String valor_texto2) {
        int longitud_texto1 = 3; 
        int longitud_texto2 = 3;
        String CombinadoSiempre = "";
        if (valor_texto1.length() < 3) {       
            longitud_texto1 = valor_texto1.length();
        }
        if (valor_texto2.length() < 3) { longitud_texto2 = valor_texto2.length(); }
CombinadoSiempre = valor_texto1.substring (0,longitud_texto1)+" "+ valor_texto2.substring (0, longitud_texto2);
return CombinadoSiempre;
    }     
}

En el primer método dice que si valor1 y valor2 es mayor o igual a 3, procede con la combinación de caracteres.. si no es así, devuelve un mensaje diciendo que "No aporta cadenas validas".

Mientras que en el segundo método:

* Se igualan a 3, en variables diferentes, las longitudes máximas de cada palabra.
* Se iguala una variable String a un espacio vacio(se inicializa al parecer con "").
* En el primer método dice que si valor1 y valor2 es mayor o igual a 3, procede con la combinación de caracteres. Mientras que en el segundo método ejecuta.
* Cuenta la cantidad de caracteres de cada variable (valor_texto1 y valor_texto2) con length() para saber si es menor a 3. Si es menor a 3, se procede a almacenar el resultado del length() en la variable longitud_texto.
* En la variable String (CombinadoSiempre) finalmente se procede la mezcla con el numero de caracteres que saco de cada palabra.
 

Prueba 1: parámetros con cadenas con mas de tres caracteres.

A los dos métodos les escribí las cadenas "PowerBuilder" y "VisualStudio".

Resultado:



¿Tiene lógica la respuesta?

Si tiene lógica.. las dos cadenas de texto eran mayor de 3 caracteres ... condición del primer método Combinador (o Pegate ), mientras que en el segundo método (CombinadoSiempre), da igual la cantidad de caracteres que tenga, igual se ejecuta la mezcla.


Prueba 2:: parámetros con cadena de mas de 3 caracteres y otra con menos de 3.

A los dos métodos les escribí las cadenas "PowerBuilder" y "C#".

Resultado:



¿Tiene lógica la respuesta?

Tambíen tiene lógica. En el primer método, como mi segunda cadena de caracteres tan solo tiene 2 letras, no se cumple la segunda condicion del if:

if (valor1.length() >= 3 && valor2.length() >= 3)

Consecuencia a esto, su return del "no aportar caracteres validos".
 
En el segundo método, todo se vale como ya sabemos... la mezcla va, porque va.


Prueba 3: Ambos parámetros con menos de 3 caracteres...

Creo que no hace falta ver... el resultado de esto es igual al anterior... el primer método devolvera "No aporta cadenas válidas", mientras que el segundo siempre combinara.

Citar
Fíjate en el resultado que ofrece el método CombinadoSiempre cuando se le pasan como parámetros dos cadenas vacías. ¿Te parece lógico el resultado?

Pues si. Java considera los espacios como caracteres... el método CombinadoSiempre, siempre va a combinar lo que le des como parámetro... hasta espacios.

Citar
En la clase tenemos definidos dos atributos o campos. ¿Tienen utilidad conocida a la vista del código de la clase? ¿Se usan en los métodos que tenemos definidos?

Nunca se usan los atributos... a mi clase si se ve bien, no le declare ni un atributo y funciona todo normal. El constructor, vi que siempre se le debe crear, no importa que este vació. La verdad, opino yo que los atributos declarados en esta clase son inutiles ya que nunca se usan en ningún método...

Ruego y agradezco sus correcciones!!! mil gracias!

245
Buenos dias!!!

Me presento a entregar el ejercicio del capitulo 49, método substring:

Crea una clase que carezca de atributos y cuyo constructor esté vacío. En dicha clase debe existir un método tipo función que reciba 3 cadenas de texto y devuelva la cadena de texto combinación de: las dos primeras letras de la primera cadena, seguidas por un espacio en blanco, seguidas de las cuatro primeras letras de la segunda cadena, seguidas de un guión medio y seguido de las 6 primeras letras de la tercera cadena.

Mi clase:

Código: [Seleccionar]
package Combinacion;

public class Fusion {
    public Fusion(){} 
   
    public String pegate(String valor1, String valor2, String valor3){
        String combinacion = valor1.substring(0, 2) + " " + valor2.substring(0, 4) + "-" + valor3.substring(0,6);
        return combinacion;
    }
}

La prueba:

Código: [Seleccionar]
public class Main {
    public static void main(String[]args){
    Combinacion.Fusion mezcla;
    mezcla = new Combinacion.Fusion();
    System.out.println(mezcla.pegate("Spiderman", "Hamburguesa", "MegamanXZ"));
    }
}




Fin del capitulo!

246
Hola!!

Tony, pregunta, ¿Porque en setPersona tienes "persona = new Persona(persona1.getNombre(), persona1.getEdad()?. Se supone que estas cargando datos, no comprendo :s

247
Hola!!

Mi clase quedo asi:

Código: [Seleccionar]
package Home;

public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa(){
        superficie = 0;
        direccion = "Desconocido";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }
   
    public void setSuperficie(double ingresoSuperficie){
        superficie = ingresoSuperficie;
    }
   
    public void setDireccion(String ingresoDireccion){
        direccion = ingresoDireccion;
    }
   
    public void setSalonCasa(String tipo, int numTv){
       salonCasa.setNumeroDeTelevisores(numTv);
       salonCasa.setTipoSalon(tipo);
    }
   
    public void setCocina(boolean esIndep, int numFuegos){
        cocina.setEsIndependiente(esIndep);
        cocina.setNumeroDeFuegos(numFuegos);
    }
   
    public double getSuperficie(){
        return superficie;
    }
   
    public String getDireccion(){
        return direccion;
    }
   
    public SalonCasa getSalonCasa(){
        return salonCasa;
    }
   
    public CocinaCasa getCocina(){
        return cocina;
    }
}

La carga es un éxito... pero al momento de imprimir... digamos.. "incógnito". Lo quize imprimir con un sistem out como normalmente uso para imprimir, pero al momento que quiero saber que tienen los objetos me suelta esto:

Home.SalonCasa@15db9742
Home.CocinaCasa@6d06d69c


No se que ocurre, cuando pido el getSalonCasa y getCocinaCasa me suelta esto S:

248
Hola!! buenas noches!!!

Aquí les traigo otro ejercicio, sobre la clase Math y sus funciones! API Java!!. El enunciado dice asi:

Crea una clase denominada miniCalculadoraEjemplo que tenga dos métodos (basados en el uso de métodos de la clase Math): un método valorAbsoluto que recibe un número de tipo double y devuelva su valor absoluto, y otro método raizCuadrada que reciba un número de tipo double y devuelva su raíz cuadrada.

Un ejercicio bastante sencillo! Aquí mi clase miniCalculadoraEjemplo:

Código: [Seleccionar]
package miniCalculadora;

public class miniCalculadoraEjemplo {
    public miniCalculadoraEjemplo(){}
   
    public double valorAbsoluto(double abs){
        return Math.abs(abs);
    }
   
    public double raizCuadrada(double num){
        return Math.sqrt(num);
    }
}

Muy util la informacion sobre el API java! Muchas gracias de nuevo!

249
Hola de nuevo!, espero que la estén pasando super!

Aquí vengo con una entrega sobre este capitulo! el enunciado del ejercicio dice así!:

Define una clase denominada multiplicadorDieces con un constructor vacío y que contenga un método denominado multiplicarPorDieces que reciba dos parámetros: el primero un número de tipo double y el segundo un número de tipo entero. El método debe devolver el resultado de multiplicar por 10 elevado al segundo número el primer número.

Definimos un objeto abstracto aqui!! mi clase multiplicadorDieces:

Código: [Seleccionar]
package Multiplicador;

public class multiplicadorDieces {
    public multiplicadorDieces(){
    }
   
    public double multiplicadorPorDieces(double num1, int num2){
        double op = 1;
        for(int i = 1; i<=num2; i++){
            op = op * 10;
        }
        op = op * num1;
        return op;
    }
}

Ya lo probé, me da las mismas respuestas... solo que con decimales largos, pero es claro que si redondeas, da la misma respuesta:

255
254.99999999999997


Perfecto, me hubiese gustado saber como redondeo en java, pero creo que es clase de mas adelante!!

Muchas gracias!   :D

250
Saludos!

Aquí traigo otro ejercicio mas! uso de clases que utilizan objetos de otras clases. Aquí el enunciado:

Define tres clases: Casa, SalonCasa y CocinaCasa. La clase SalonCasa debe tener como atributos numeroDeTelevisores (int) y tipoSalon (String) y disponer de un constructor que los inicialice a 0 y “desconocido”. La clase CocinaCasa debe tener como atributos esIndependiente (boolean) y numeroDeFuegos (int) y un constructor que los inicialice a false y 0. La clase Casa tendrá los siguientes atributos de clase: superficie (double), direccion (String), salonCasa (tipo SalonCasa) y cocina (tipo CocinaCasa). Define un constructor para la clase Casa que establezca a unos valores de defecto los atributos simples y que cree nuevos objetos si se trata de atributos objeto.

Aquí la clase SalonCasa:

Código: [Seleccionar]
package Home;

public class SalonCasa {
    private int numeroDeTelevisores;
    private String tipoSalon;
   
    public SalonCasa(){
        numeroDeTelevisores = 0;
        tipoSalon = "desconocido";
    }
   
    public void setNumeroDeTelevisores(int ingresoNumeroDeTelevisores){
        numeroDeTelevisores = ingresoNumeroDeTelevisores;
    }
   
    public void setTipoSalon(String ingresoTipoSalon){
        tipoSalon = ingresoTipoSalon;
    }
   
    public int getNumeroDeTelevisores(){
        return numeroDeTelevisores;
    }
   
    public String getTipoSalon(String ingresoTipoSalon){
        return tipoSalon;
    }
}


La clase CocinaCasa:

Código: [Seleccionar]
package Home;

public class CocinaCasa {
    private boolean esIndependiente;
    private int numeroDeFuegos;
   
    public CocinaCasa(){
        esIndependiente = false;
        numeroDeFuegos = 0;
    }
   
    public void setEsIndependiente(boolean ingresoIndependiente){
        esIndependiente = ingresoIndependiente;
    }
   
    public void setNumeroDeFuegos(int ingresoNumeroDeFuego){
        numeroDeFuegos = ingresoNumeroDeFuego;
    }
   
    public boolean getEsIndependiente(){
        return esIndependiente;
    }
   
    public int getNumeroDeFuegos(){
        return numeroDeFuegos;
    }
}

Y por ultimo... la clase Casa:

Código: [Seleccionar]
package Home;

public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa(){
        superficie = 0;
        direccion = "Desconocido";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }
   
    public void setSuperficie(double ingresoSuperficie){
        superficie = ingresoSuperficie;
    }
   
    public void setDireccion(String ingresoDireccion){
        direccion = ingresoDireccion;
    }
   
    public double getSuperficie(){
        return superficie;
    }
   
    public String getDireccion(){
        return direccion;
    }
}

Los setters y getters, los coloque por el tema de consulta y configuracion de atributos. Ademas en la entrega del ejercicio del capitulo pasado, habia leido que cualquiera clase que use atributos, se le debe colocar sus getter y setters.

Muchas Gracias nuevamente

251
Buenas tardes!

Hoy vengo a hacerles una entrega de la practica de este capitulo del curso de programación Java, dice así el enunciado:

Define una clase Profesor considerando los siguientes atributos de clase: nombre (String), apellidos (String), edad (int), casado (boolean), especialista (boolean). Define un constructor que reciba los parámetros necesarios para la inicialización y otro constructor que no reciba parámetros. Crea los métodos para poder establecer y obtener los valores de los atributos.

Se crea dos constructores en la clase (con parámetros y sin parámetros.):

Código: [Seleccionar]
package profe;

public class Profesor {
    private String nombre, apellido;
    private int edad;
    private boolean especialista, casado;
   
    public Profesor(String vNombre, String vApellido, boolean vEspecialista, boolean vCasado, int vEdad){
        nombre = vNombre;
        apellido = vApellido;
        edad = vEdad;
        especialista = vEspecialista;
        casado = vCasado;
    }
   
    public Profesor(){
        nombre = "";
        apellido = "";
        edad = 0;
        especialista = false;
        casado = false;
    }
   
    public void setNombre(String ingresoNombre){
        nombre = ingresoNombre;
    }
   
    public void setApellido(String ingresoApellido){
        apellido = ingresoApellido;
    }
   
    public void setEdad(int ingresoEdad){
        edad = ingresoEdad;
    }
   
    public void setEspecialista(boolean ingresoEspecialista){
        especialista = ingresoEspecialista;
    }
   
    public void setCasado(boolean ingresoCasado){
        casado = ingresoCasado;
    }
   
    public String getNombre(){
        return nombre;
    }
   
    public String getApellido(){
        return apellido;
    }
   
    public int getEdad(){
        return edad;
    }
   
    public boolean getEspecialista(){
        return especialista;
    }
   
    public boolean getCasado(){
        return casado;
    }
}

Ahora los invocaría de las dos formas!
profesor1 = new Profesor();
profesor2 = new Profesor("Daniel","Phillips",false,false,20);


Finalmente, mi pregunta es: ¿Es buena idea tener dos constructores en una clase?

Citar
Cuando más de un constructor o método tienen el mismo nombre pero distintos parámetros decimos que el constructor o método está sobrecargado. La sobrecarga de constructores o métodos permite llevar a cabo una tarea de distintas maneras (por ejemplo crear un objeto Persona con un nombre ya establecido o crearlo sin nombre establecido).

252
Sii, eso pensé, pero también pensé que dependía del problema...

Citar
Has de tener presente que si una clase tiene atributos, ha de tener setters y getters.

Pero ya ese pensamiento desapareció... jajajaj! gracias

253
Muy buenas tardes

Hoy tengo que quedarme en la U hasta las 3:00 PM... y bueno decidí invertir el tiempo en este curso!, no entregue nada en el día de ayer por estar ocupado con asignaciones. Hoy les entrego el siguiente ejercicio que dice así:

Define una clase Bombero considerando los siguientes atributos de clase: nombre (String), apellidos (String), edad (int), casado (boolean), especialista (boolean). Define un constructor que reciba los parámetros necesarios para la inicialización y los métodos para poder establecer y obtener los valores de los atributos. Compila el código para comprobar que no presenta errores, crea un objeto y comprueba que se inicializa correctamente consultando el valor de sus atributos después de haber creado el objeto.

Aquí mi clase Bombero:

Código: [Seleccionar]

package Bomber;

public class Bombero {
   private String nombre, apellido;
   private int edad;
   private boolean casado, especialista;

   public Bombero(String vNombre, String vApellido, int vEdad, boolean vCasado, boolean vEspecialista){
       nombre = vNombre;
       apellido = vApellido;
       edad = vEdad;
       casado = vCasado;
       especialista = vEspecialista;
   }

   public void setNombre(String ingresoNombre){
       nombre = ingresoNombre;
   }
   
   public void setApellido(String ingresoApellido){
       apellido = ingresoApellido;
   }
   
   public void setEdad(int ingresoEdad){
       edad = ingresoEdad;
   }
   
   public void setCasado(boolean ingresoCasado){
       casado = ingresoCasado;
   }
   
   public void setEspecialista(boolean ingresoEspecialista){
       especialista = ingresoEspecialista;
   }

   public String getNombre(){
       return nombre;
   }

   public String getApellido(){
       return apellido;
   }

   public int getEdad(){
       return edad;
   }

   public boolean getCasado(){
       return casado;
   }

   public boolean getEspecialista(){
       return especialista;
   }
}


Por lo que pude comprender en este capitulo, ahora se quiere inicializar los atributos del constructor con las variables que se encuentran en el parámetro del mismo (Si lo he dicho mal, corrijanme .), use netbeans... se que no debo tocar el main por ahora pero quise efectuar una prueba para ver como esta vez funcionaria. Ahora al parecer (Tomando como ejemplo el problema del disco musical https://www.aprenderaprogramar.com/foros/index.php?topic=2064.0), si antes escribía por ejemplo Disco1 = new DiscoMusical();, ahora como el constructor tiene parámetros... debe ser Disco1 = new DiscoMusical("", "", 0, "", false)... Ahora al hacer esto estaría incializando mis variables de esta forma (de mas decir que también podría añadirle la info directamente sin usar ningún setter).

Aquí mi clase main (recalco, solo probaba):

Código: [Seleccionar]
package Bomber;

public class Main {

    public static void main(String[ ]args){
        Bombero bombero1;
        bombero1 = new Bombero("Daniel", "Phillips", 19, false, true);
        System.out.println(bombero1.getNombre());
        System.out.println(bombero1.getApellido());
        System.out.println(bombero1.getEdad());
        System.out.println(bombero1.getCasado());
        System.out.println(bombero1.getEspecialista());
    }
}

Y aquí la ejecución:



A decir verdad, algo nuevo para este servidor...! de mas decir que si tengo algún error, o desean ampliarme, aquí estaré para leer sus comentarios.

Muchas gracias de nuevo por sus cursos :)

254
Disculpas... esto del private, public la verdad no se para que funciona, por eso mismo he venido aqui... Yo se que al poner "static" ya se puede usar el metodo en la clase main o variables pero no se para que mas servira...

Mas adelante me imagino que lo explicaran, gracias!

255
Buenas noches...

Yo otra vez, con el ultimo ejercicio que entregare hoy! sobre las variables locales y sobrecarga de nombres.. el enunciado dice:

Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Motor (que representa el motor de una bomba para mover fluidos). Define una clase Motor considerando los siguientes atributos de clase: tipoBomba (int), tipoFluido (String), combustible (String). Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos. Crea un método tipo función que devuelva un booleano (true o false) denominado dimeSiMotorEsParaAgua() donde se cree una variable local booleana motorEsParaAgua de forma que si el tipo de motor tiene valor 1 tomará valor true y si no lo es tomará valor false. El método debe devolver la la variable local booleana motorEsParaAgua.

Aquí el código!!

Código: [Seleccionar]
package Motorsito;

public class Motor {
    int tipoBomba;
    String tipoFluido, combustible;
   
    public Motor(){
        tipoBomba = 0;
        tipoFluido = "";
        combustible = "";
    }
   
    public void setTipoBomba(int ingresoTipoBomba){
        tipoBomba = ingresoTipoBomba;
    }
   
    public void setTipoFluido(String ingresoTipoFluido){
        tipoFluido = ingresoTipoFluido;
    }
   
    public void setCombustible(String ingresoCombustible){
        combustible = ingresoCombustible;
    }
   
    public boolean dimeSiMotorEsParaAgua(){
        boolean motorEsParaAgua = false;
        if (tipoBomba == 1){
            motorEsParaAgua = true;
        }
        else {
            motorEsParaAgua = false;
        }
        return motorEsParaAgua;
    }     
   
    public int getTipoBomba(){
        return tipoBomba;
    }
   
    public String getTipoFluido(){
        return tipoFluido;
    }
   
    public String getCombustible(){
        return combustible;
    }
   
}

Ya descanso por hoy... es que al darme cuenta que cumplo ya el mes de estar en esta pagina, y apenas ir por el punto 38... bueno, aunque se justifica por la Universidad x___x

Si tengo algo incorrecto no duden en comentarlo! mil gracias :)

256
Buenas noches!!

Vengo tambien a presentarles el ejercicio sobre switch en java!!! Enunciado:

Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Motor (que representa el motor de una bomba para mover fluidos). Define una clase Motor considerando los siguientes atributos de clase: tipoBomba (int), tipoFluido (String), combustible (String). Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos. Crea un método tipo procedimiento denominado dimeTipoMotor() donde a través de un condicional switch hagas lo siguiente:

a) Si el tipo de motor es 0, mostrar un mensaje por consola indicando “No hay establecido un valor definido para el tipo de bomba”.

b) Si el tipo de motor es 1, mostrar un mensaje por consola indicando “La bomba es una bomba de agua”.

c) Si el tipo de motor es 2, mostrar un mensaje por consola indicando “La bomba es una bomba de gasolina”.

d) Si el tipo de motor es 3, mostrar un mensaje por consola indicando “La bomba es una bomba de hormigón”.

e) Si el tipo de motor es 4,mostrar un mensaje por consola indicando “La bomba es una bomba de pasta alimenticia”.

f) Si no se cumple ninguno de los valores anteriores mostrar el mensaje “No existe un valor válido para tipo de bomba”.


Aqui el codigo! :)

Código: [Seleccionar]
package Motorsito;

public class Motor {
    int tipoBomba;
    String tipoFluido, combustible;
   
    public Motor(){
        tipoBomba = 0;
        tipoFluido = "";
        combustible = "";
    }
   
    public void setTipoBomba(int ingresoTipoBomba){
        tipoBomba = ingresoTipoBomba;
    }
   
    public void setTipoFluido(String ingresoTipoFluido){
        tipoFluido = ingresoTipoFluido;
    }
   
    public void setCombustible(String ingresoCombustible){
        combustible = ingresoCombustible;
    }
   
    public void dimeTipoMotor(){       
        switch(tipoBomba){
            case 0:
                System.out.println("“No hay establecido un valor definido para el tipo de bomba”.");
            break;
            case 1:
                System.out.println("La bomba es una bomba de agua.");
            break;
            case 2:
                System.out.println("La bomba es una bomba de gasolina.");
            break;
            case 3:
                System.out.println("La bomba es una bomba de hormigón.");
            break;
            case 4:
                System.out.println("La bomba es una bomba de pasta alimenticia.");
            break;
            default:
                System.out.println("No existe un valor válido para tipo de bomba.");
            break;
        }
    }
   
    public int getTipoBomba(){
        return tipoBomba;
    }
   
    public String getTipoFluido(){
        return tipoFluido;
    }
   
    public String getCombustible(){
        return combustible;
    }
   
}

Se le agradecería comentar cualquier error... mil gracias .. ;)

257
Buenas noches

Vengo aquí con una entrega del ejercicio sobre los else and if, el enunciado dice así:

Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Rueda (que representa a una rueda de un vehículo). Define una clase Rueda considerando los siguientes atributos de clase: tipo (String), grosor (double), diametro (double), marca (String). Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos. Crea un método denominado comprobarDimensiones donde a través de condicionales if realices las siguientes comprobaciones:

a) Si el diámetro es superior a 1.4 debe mostrarse por consola el mensaje “La rueda es para un vehículo grande”. Si es menor o igual a 1.4 pero mayor que 0.8 debe mostrarse por consola el mensaje “La rueda es para un vehículo mediano”. Si no se cumplen ninguna de las condiciones anteriores debe mostrarse por pantalla el mensaje “La rueda es para un vehículo pequeño”.

b) Si el diámetro es superior a 1.4 con un grosor inferior a 0.4, ó si el diámetro es menor o igual a 1.4 pero mayor que 0.8, con un grosor inferior a 0.25, deberá mostrarse por consola el mensaje “El grosor para esta rueda es inferior al recomendado”.


La segunda tuve que leerlo varias veces, (así que si ven algo incorrecto me avisan :) ) aquí el código:

Código: [Seleccionar]
package RuedaFire;

public class Rueda {
    String tipo;
    double grosor;
    double diametro;
    String marca;
   
    public Rueda(){
        tipo = "";
        grosor = 0;
        diametro = 0;
        marca = "";
    }
   
    public void setTipo(String ingresoTipo){
        tipo = ingresoTipo;
    }
   
    public void setGrosor(double ingresoGrosor){
        grosor = ingresoGrosor;
    }
   
    public void setDiametro(double ingresoDiametro){
        diametro = ingresoDiametro;
    }
   
    public void setMarca(String ingresoMarca){
        marca = ingresoMarca;
    }
   
    public void comprobarDimensiones (){
        if (diametro > 1.4){
            System.out.println("La rueda es para un vehiculo grande.");
        }
        else if (diametro <= 1.4 && diametro > 0.8){
            System.out.println("La rueda es para un vehiculo mediano.");
        }
        else
            System.out.println("La rueda es para un vehiculo pequeño.");
       
        if ((diametro > 1.4 && grosor < 0.4)||(diametro <= 1.4 && diametro > 0.8 && grosor < 0.25)){
            System.out.println("El grosor para esta rueda es inferior al recomendado.");
        }
    }
   
    public String getTipo(){
        return tipo;
    }
   
    public double getGrosor(){
        return grosor;
    }
   
    public double getDiametro(){
        return diametro;
    }
   
    public String getMarca(){
        return marca;
    }
   
}

Muchas gracias por su atención!

258
Hola toni

Resulta que estaba desarrollando el examen en una notebook, y bueno, mi tecla 9 esta dañada ... con esto mismo hago el paréntesis derecho " ) ", se me ocurrió la estupenda idea de ponerlo con números y bueno... mil disculpas por eso... :(

259
Esta bien natagibson!! solo que nada mas faltarian dos setters y getters (formato y digital)!
Pero bueno, mejor  deja que los profesionales hablen, pero por mi esta bastante bien a excepción de eso que mencione ya que el enunciado dice que definas los métodos para poder establecer y obtener los valores de los atributos...  :)

260
Buenas noches

Aquí les dejo la entrega del ejercicio sobre los operadores lógicos.

Dadas las variables de tipo int con valores A = 5, B = 3, C = -12 indicar si la evaluación de estas expresiones daría como resultado verdadero o falso:

1. A > 3  Verdadero
2. B < C  Falso
3. A * B == 15 Verdadero
4. C / B == -10 Falso
5. (A+B == 8 ) && (A-B == 2) Verdadero
6. A > 3 && B > 3 && C < 3  Falso
7. A > C Verdadero
8. B != C Verdadero
9. A * B == -30 Falso
10. C/B == -4 Verdadero
11. (A+B == 8 ) || (A-B == 6) Verdadero
12.  A > 3 && B >= 3 && C < -3 Verdadero
13. A < C Falso
14. A == 3 Falso
15. C/B < A Verdadero
16. A + B + C == 5 Falso

Entrenamiento mental >.<, Cualquier errorsillo, se le agradecería ayuda y explicación.
Gracias!

Páginas: 1 ... 8 9 10 11 12 [13] 14

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".