Java - Problema con arreglo vectorial

 
Vista:
sin imagen de perfil

Problema con arreglo vectorial

Publicado por Michael (2 intervenciones) el 13/12/2014 08:31:55
muy buenas, me disculpo si he posteado en donde no debía pero soy nuevo en esto agradecería me corrijan si lo hice mal y me ayuden en la solución si esta al alcance de ustedes, gracias.

tengo el siguiente código que recibe valores por parámetros, y el error que me muestra es este el cual no se lo que significa

********mensaje de error********
Exception in thread "main" java.lang.StackOverflowError
at proyectoprograi.AgregarCliente.<init>(AgregarCliente.java:48)


********codigo del proyecto********
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package proyectoprograi;
 
import javax.swing.JOptionPane;
 
/**
 *
 * @author MichaelBrenes
 */
public class AgregarCliente
{
    AgregarCliente cliente[] = new AgregarCliente[2];
 
    private String nombreCliente;
    private int id;
    private float numCuenta;
    private String direccion;
    private String lugarTrabajo;
    private int telefonoPersonal;
    private long cantidadDepposito;
    private String detalleDeposito;
 
 
 
public AgregarCliente(String nombreCliente, int id, float numCuenta, String direccion, String lugarTrabajo, int telefonoPersonal, long cantidadDeposito, String detalleDeposito)
    {
        for (int contadorCliente = 0; contadorCliente < cliente.length; contadorCliente++)
        {
            this.nombreCliente=nombreCliente;
            this.id=id;
            this.numCuenta=numCuenta;
            this.direccion=direccion;
            this.lugarTrabajo=lugarTrabajo;
            this.telefonoPersonal=telefonoPersonal;
            this.cantidadDepposito=cantidadDeposito;
            this.detalleDeposito=detalleDeposito;
 
           cliente[contadorCliente] = new AgregarCliente
        (nombreCliente,id,numCuenta,direccion,lugarTrabajo,telefonoPersonal,cantidadDeposito,detalleDeposito);
 
        }
    }
 
    public void muestraInfo()
    {
        JOptionPane.showMessageDialog(null,"Nombre: "+nombreCliente+"\nID: "+id+
                "\nNumero de Cuenta"+numCuenta+"\nDireccion: "
                +direccion+"\nLugar de Trabajo: "+lugarTrabajo+"\nTelefono Personal: "
                +telefonoPersonal+"\nDetalle del Deposito"+detalleDeposito+
                "\nCAntidad del deposito"+cantidadDepposito,
                "INFORMACION CLIENTE",JOptionPane.INFORMATION_MESSAGE);
 
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Problema con arreglo vectorial

Publicado por acaty2 (1 intervención) el 13/12/2014 20:02:50
Java inicia siempre por el método main:

public static void main(String[] args) {
// Aquí pones el código que inicia tu programa.
}


Te recomiendo el manual de Java de la editorial Deitel
http://www.identi.li/index.php?topic=290504
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Problema con arreglo vectorial

Publicado por Michael brenes (2 intervenciones) el 13/12/2014 20:11:52
Realmente te agradezco acaty2 por el tiempo para responde mi duda sien embargo fue error de mi parte no mencionar que programación orientada a objetos y no lineal el main únicamente se utiliza para crear instancias y referencias que ejecutan nuestro código, igualmente mil gracias...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 349
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Problema con arreglo vectorial

Publicado por Andrés (340 intervenciones) el 13/12/2014 23:25:27
El problema son lo llamados apliados en el stack, por eso el error, sólo revisa esta parte:

el arreglo de clientes (cliente) tiene una longitud de 2,

ahora, supon que invocas al metodo AgregarCliente (que debería ser agregarCliente) la primera vez

entonces llega al método (que se apila, es decir stack de llamadas)

contador cliente vale 0

termina la asignación y dice cliente[0]=AgregarCliente(.....)

con lo que el proceso se repite una y otra vez, asi te acabas el stack!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar