elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Mensajes
Páginas: [1]
1  Programación / Java / Re: Atributo de tipo "clase" : no entiendo nada en: 20 Enero 2018, 11:54 am
Gracias por las respuestas chicos, ya me queda más claro. Estoy empezando y hay cosas que aun no he dado, pero revisare este hilo cuando avance en la materia.

Efectivamente, el enunciado esta imcompleto y por eso faltan las clases hijas jeje. La duda que tenia era lo del atributo tipo objeto. Intenté hacerlo así:

Código
  1. Cuenta libreta1 = new Cuenta(1, 3000, new Cliente(22, "Pepe", "Calle Falsa", "963232323"));

pero daba error, seguramente no habia puesto lo de "new Cliente" antes de los parámetros.

pero ahora casi todo claro!
2  Programación / Java / Re: Atributo de tipo "clase" : no entiendo nada en: 19 Enero 2018, 16:22 pm
Pues tendrá los atributos//variables que tenga tu clase Cliente, en tu caso la clase Cliente tiene los atributos: idCliente, nombre, direccion y telefono:

Código
  1. public class Cliente{
  2.  
  3.    private int idCliente;
  4.    private String nombre;
  5.    private String direccion;
  6.    private String telefono;
  7.  
  8.   ...
  9.  

Esos valores los podrás modificar u obtener con los setters y los getters de un objeto de la clase Cliente:

Código
  1.    public void setIdCliente(int idCliente){
  2.        this.idCliente = idCliente;
  3.    }
  4.  
  5.    public String getNombre(){
  6.        return nombre;
  7.    }
  8.  
  9.   ...
  10.  


Gracias por la respuesta. Pero lo que dices, puede hacerse aun si no existiera la clase "Cuenta" (que es donde esta el atributo del tipo de clase "Cliente". Yo lo que digo es que trabajando con la clase "Cuenta":

Código
  1.  
  2. package modeloBancario;
  3.  
  4. public abstract class Cuenta {
  5.  
  6.    protected int numeroDeCuenta;
  7.    protected double saldo;
  8.    protected Cliente titular;
  9.  
  10.    public Cuenta(){
  11.  
  12.        numeroDeCuenta = 0;
  13.        saldo = 0;
  14.        titular = null;
  15.  
  16.    }
  17.  
  18.    public Cuenta (int numeroDeCuent, double saldo, Cliente titular){
  19.  
  20.        this.numeroDeCuenta = numeroDeCuenta;
  21.        this.saldo = saldo;
  22.        this.titular = titular;
  23.  
  24.  

hago su constructor con parámetros:

Código
  1. public Cuenta (int numeroDeCuent, double saldo, Cliente titular){
  2.  
  3.        this.numeroDeCuenta = numeroDeCuenta;
  4.        this.saldo = saldo;
  5.        this.titular = titular;
  6.    }

y...¿como se supone que creo un objeto del tipo titular? ¿Que parametos le doy?:

Código
  1.  
  2.    public static void main(String[] args) {
  3.  
  4.        Cuenta libreta1 = new Cuenta(1,3000,¿¿¿???);
  5.  
  6.  
  7.  

¿que pongo en las interrogaciones? se supone que titular, al ser de tipo de clase "Cliente", tiene 4 atributos. ¿Hay que poner los 4? ¿Alguno? ¿Que va ahi? Ya se que en los int van numeros, en los string letras...pero ahi,¿ que va?
3  Programación / Java / Re: Atributo de tipo "clase" : no entiendo nada en: 18 Enero 2018, 23:18 pm
Al final lo deje asi, no se si estara bien:

Código
  1.  
  2. package modeloBancario;
  3.  
  4. public abstract class Cuenta {
  5.  
  6.    protected int numeroDeCuenta;
  7.    protected double saldo;
  8.    protected Cliente titular;
  9.  
  10.    public Cuenta(){
  11.  
  12.        numeroDeCuenta = 0;
  13.        saldo = 0;
  14.        titular = null;
  15.  
  16.    }
  17.  
  18.    public Cuenta (int numeroDeCuent, double saldo, Cliente titular){
  19.  
  20.        this.numeroDeCuenta = numeroDeCuenta;
  21.        this.saldo = saldo;
  22.        this.titular = titular;
  23.    }
  24.  
  25.    public int getNumeroDeCuenta(){
  26.        return numeroDeCuenta;
  27.    }
  28.  
  29.    public void setNumeroDeCuenta(int numeroDeCuenta){
  30.        this.numeroDeCuenta = numeroDeCuenta;
  31.    }
  32.  
  33.    public double getSaldo(){
  34.        return saldo;
  35.    }
  36.  
  37.    public void setSaldo (int saldo){
  38.        this.saldo = saldo;
  39.    }
  40.  
  41.    public Cliente getTitular(){
  42.        return titular;
  43.    }
  44.  
  45.    public void setTitular(Cliente titular){
  46.        this.titular = titular;
  47.    }
  48.  
  49.  


Imagino que luego podre crear objetos del tipo "Cliente". Lo que no entiendo es que valores pueden tener. Esta claro que int tendra un entero, un String letras...pero que valores puede tener la clase "Cliente"?
4  Programación / Java / Atributo de tipo "clase" : no entiendo nada en: 18 Enero 2018, 18:02 pm
Buenas tardes. Estoy haciendo DAW y empieza a complicarse el asunto y estoy algo perdido. Os pego la parte del enunciado y que no entiendo resaltado en negrita:


Citar
En esta tarea se van a realizar un conjunto de clases que permitan modelar las distintos tipos de cuentas que una persona puede tener en un banco, haciendo uso del mecanismo de herencia. Los puntos que se deben tratar para resolver la tarea son:


Crear un proyecto en NetBeans denominado, "CuentasBancarias".

Dentro de dicho proyecto, crear un paquete denominado "modeloBancario".

Dentro del paquete "modeloBancario", crear una clase denominada Cliente, que modele los distintos clientes del banco que tienen una cuenta asociada para almacenar su dinero. Las características de la clase Cliente son:
Atributos (Todos los atributos de la clase Cliente deben tener visibilidad privada):

idCliente: número entero que representa el identificador único del cliente dentro del banco.
nombre: cadena de caracteres que representa el nombre del cliente del banco.
direccion: cadena de caracteres que representa la dirección donde vive el cliente del banco.
teléfono: cadena de caracteres que representa el teléfono que permite contactar con el cliente.

Métodos (Todos los métodos de la clase Cliente deben tener visibilidad pública):
constructor sin parámetros: constructor que inicializa todos los atributos de tipo cadenas de caracteres al valor null y los números enteros a 0.
constructor con parámetros: constructor que tienen tantos parámetros como atributos tiene la clase, y que inicializa cada uno de los atributos con el valor de los parámetros correspondientes.

Dentro del paquete "modeloBancario", crear una clase abstracta denominada "Cuenta", que modele las distintas cuentas bancarias que mantiene la entidad financiera donde los clientes depositan su dinero.
Atributos (Todos los atributos de la clase Cuenta deben tener visibilidad protegida)

numeroDeCuenta: número entero que representa el identificador único asociado a cada una de las cuentas del banco.
saldo: número real que representa la cantidad de dinero almacenado en dicha cuenta.
titular: atributo de tipo Cliente que representa la persona que está asociada a dicha cuenta.

Métodos (Todos los métodos de la clase Cuenta deben tener visibilidad pública)
constructor sin parámetros: constructor que inicializa el cliente titular de la cuenta a null, y el saldo y el número de cuenta a cero.
constructor con parámetros: constructor que tienen tantos parámetros como atributos tiene la clase, y que inicializa cada uno de los atributos con el valor de los parámetros correspondientes.
getNumeroDeCuenta: método que permite obtener el número de cuenta.
getSaldo: método que permite obtener el saldo de la cuenta.
getTitular: método que permite obtener el titular de la cuenta  
setNumeroDeCuenta: método que recibe un parámetro entero que representa el nuevo número de cuenta que se desea asignar y asigna parámetro el valor de dicho al atributo numeroDeCuenta.
setSaldo: método que recibe un parámetro entero que representa el nuevo saldo que se desea asignar y asigna parámetro el valor de dicho al atributo saldo.
setTitular: método que recibe un parámetro Cliente que representa el nuevo titular que se desea asignar y asigna parámetro el valor de dicho al atributo titular.
ingresar: recibe un parámetro real que representa la cantidad que se desea ingresar en la cuenta. El método incrementará el saldo en la cantidad recibida como parámetro.
retirar: método abstracto que permitirá sacar una cantidad de la cuenta (si hay saldo disponible para ello), no se implementará ya que dependerá del tipo de cuenta, por tanto su implementación recaerá en las clases hijas.
actualizarSaldo: método abstracto que actualizará el saldo de la cuenta, dependiendo del tipo de interés de cada una de las cuenta, por tanto su implementación recaerá en las clases hijas.

Ahí me pierdo, no entiendo que quiere decir  "tipo Cliente". Osea, debe de ser que ese atributo sea la clase entera llamada "Cliente". Os pongo lo que he hecho hasta ahora:

Clase "Cliente":

Código
  1.  
  2. package modeloBancario;
  3.  
  4. public class Cliente {
  5.  
  6.    private int idCliente;
  7.    private String nombre;
  8.    private String direccion;
  9.    private String telefono;
  10.  
  11.    public Cliente (){
  12.  
  13.    }
  14.  
  15.    public Cliente (int idCliente, String nombre, String direccion, String telefono){
  16.  
  17.        this.idCliente = idCliente;
  18.        this.nombre = nombre;
  19.        this.direccion = direccion;
  20.        this.telefono = telefono;
  21.  
  22.    }
  23.  
  24.    public int getIdCliente(){
  25.        return idCliente;
  26.    }
  27.  
  28.    public void setIdCliente(int idCliente){
  29.        this.idCliente = idCliente;
  30.    }
  31.  
  32.    public String getNombre(){
  33.        return nombre;
  34.    }
  35.  
  36.    public void setNombre(String nombre){
  37.        this.nombre = nombre;
  38.    }
  39.  
  40.    public String getDireccion(){
  41.        return direccion;
  42.    }
  43.  
  44.    public void setDireccion(String direccion){
  45.        this.direccion = direccion;
  46.    }
  47.  
  48.    public String getTelefono(){
  49.        return telefono;
  50.    }
  51.  
  52.    public void setTelefono(String telefono){
  53.        this.telefono = telefono;
  54.    }
  55.  
  56. }
  57.  
  58.  



y la clase "Cuenta":

Código
  1.  
  2. package modeloBancario;
  3.  
  4. public abstract class Cuenta {
  5.  
  6.    protected int numeroDeCuenta;
  7.    protected double saldo;
  8.    protected Cliente titular;
  9.  
  10.    public Cuenta(){
  11.  
  12.        numeroDeCuenta = 0;
  13.        saldo = 0;
  14.        titular ();
  15.  
  16.    }
  17.  
  18. }
  19.  

Agradeceria una pista, llevo dias atascado!
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines