Java - Ayuda con Metodo Main en Java Porfavor

   
Vista:
Imágen de perfil de JennAnn

Ayuda con Metodo Main en Java Porfavor

Publicado por JennAnn (23 intervenciones) el 02/10/2015 04:02:34
1.- Hola buenas noches, quisiera si me pueden ayudar con el metodo Main, mi profesor me pidio que hiciera una clase pelota que pusiera peso y radio y supiera cuando eh pateado una pelota o si la eh atrapado? , tengo esto pero me salen errores, nose como corregirlos, ¿que me hace falta corregir para que me corra el programa? :

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
import java.util.*;
public class Pelota {
    {
   float radio;
   float peso;
 
public Pelota()
{
    radio=100;
    peso=250;
}
 
 public Pelota (float radio, float peso)
 {
        this.radio=radio;
        this.peso=peso;
 }
 
 public float obtenRadio()
 {
     return radio;
 }
 
 public float obtenPeso()
 {
     return peso;
 }
 
 public void patearPelota()
 {
     System.out.println("Haz pateado una pelota");
 }
 
 public void atraparPelota()
 {
     System.out.println("Haz atrapado la pelota");
 }
}

2.-Pero aparte de eso, me pidio que hiciera una clase main en la que con los datos de la pelota, me diera otros 2 objetos ejemplo (balon, bola) y me diera cuanto pesa cada uno al patear o atrapar, tengo esto echo pero tambien tengo errores y nose como corregirlo o que mas poner, me pueden ayudar porfavor?:

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
import paquete.Pelota;
import paquete.Balon;
import paquete.Bola;
public class Main
{
    public static void main(String[] args)
    {
      Pelota p;
      p=new Pelota();
      Pelota pB=new Pelota();
      p.patearPelota();
      float var=p.obtenPeso();
      System.out.println("La pelota pesa: "+var);
      Balon b;
      float peso;
      var1=peso();
 
      b=new Balon();
      Balon bB=new Balon();
      b.patearBalon();
      float var1=b.obtenPeso();
      System.out.println("El balón pesa: "+var1);
      Bola v;
      v=new Bola();
      Bola vV=new Bola();
      v.lanzarBola();
      float var2=v.obtenPeso();
      System.out.println("La bola pesa: "+var2);
    }
}
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

Ayuda con Metodo Main en Java Porfavor

Publicado por Juan R. (94 intervenciones) el 02/10/2015 13:35:06
Buenas JennAnn

Por partes. Lo primero es que la primera clase no tiene errores, una vez que quitas una de las dos llaves de inicio de clase, es decir, después de public class Pelota()

En cuanto al Main, si te están mandando crear dos objetos si son de tipo distinto de Pelota, lo que tendrías que hacer es crear dos clases derivadas de la clase Pelota (que imagino que habrás hecho, sería bueno que nos pegaras las clases para poder comprobarlas).

Probablemente el error lo tengas en estas tres líneas de código:
Balon b;
float peso;
var1=peso();

Por orden, yo habría declarado al inicio del método main la variable b y var1. La variable peso no te hace falta para nada (o al menos tú no la usas en el código). eso sí, si declaras var1, hazlo en condiciones float var1.

Después la última línea no tiene sentido para nada, primero porque no existe ese método (peso()) dentro de la clase Main y después porque no puedes acceder al método de una clase así. A parte justo en las líneas siguientes:
b=new Balon();
Balon bB=new Balon();
b.patearBalon();
float var1=b.obtenPeso();
System.out.println("El balón pesa: "+var1);

Ahí lo haces bien. Así que eliminando la línea: var1=peso(); es bastante probable que te funcione ya; aunque no lo puedo asegurar porque no nos has puesto la implementación de las clases Balon y Bola, por tanto, aunque imagino que serán clases extends de Pelota y demás no podemos saber si dichas clases están bien.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de JennAnn

Ayuda con Metodo Main en Java Porfavor

Publicado por JennAnn (23 intervenciones) el 04/10/2015 05:06:46
Hola gracias por responder, anexo las otras dos clases de balon y bola.
Nota: tengo las 3 clases de Pelota, Balon y Bola, pero como ago que corran con una clase Main?

ME DA ERROR EN ESTE, me pueden decir en que estoy mal? Dejo imagen de el msj que me sale cuando lo corro, me tiene que salir las dos preguntas de cada clase que hise ( haz pateado una pelota, haz atrapado un balon y cuanto pesa, esos 3 me tienen que salir por cada clase de balon, pelota y bola.


------------------------------------------ CLASE PELOTA -----------------------------------------------
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
import java.util.*;
public class Pelota
    {
   float radio;
   float peso;
 
public Pelota()
{
    radio=100;
    peso=250;
}
 
 public Pelota (float radio, float peso)
 {
        this.radio=radio;
        this.peso=peso;
 }
 
 public float obtenRadio()
 {
     return radio;
 }
 
 public float obtenPeso()
 {
     return peso;
 }
 
 public void patearPelota()
 {
     System.out.println("Haz pateado una pelota");
 }
 
 public void atraparPelota()
 {
     System.out.println("Haz atrapado la pelota");
 }
}

----------------------------------------- CLASE BALON -------------------------------------------
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
import java.util.*;
public class Balon {
    float radio;
   float peso;
 
public Balon()
{
   radio=150;
   peso=500;
}
 
public Balon (float radio, float peso)
{
 this.radio=radio;
 this.peso=peso;
}
 
public float obtenRadio()
{
    return radio;
}
 
public float obtenPeso()
{
    return peso;
}
public void patearBalon()
{
    System.out.println("Haz pateado un balón");
}
 
public void atraparBalon()
{
    System.out.println("Haz atrapado un balón");
}
}

------------------------------------------------ CLASE BOLA ---------------------------------------------------

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
import java.util.*;
public class Bola {
    float radio;
   float peso;
 
public Bola()
{
   radio=50;
   peso=150;
}
 
public Bola (float radio, float peso)
{
 this.radio=radio;
 this.peso=peso;
}
 
public float obtenRadio()
{
    return radio;
}
 
public float obtenPeso()
{
    return peso;
}
 
public void lanzarBola()
{
    System.out.println("Haz lanzadoo una bola");
}
 
public void atraparBola()
{
    System.out.println("Haz atrapado un bola");
}
}

------------------------------------------- CLASE MAIN -------------------------------------------

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
public class Main {
    public static void main(String[] args)
    {
      Pelota p;
      p=new Pelota();
      Pelota pB=new Pelota();
      p.patearPelota();
      float var=p.obtenPeso();
      System.out.println("La pelota pesa: "+var);
      Balon b;
      float peso;
 
      b=new Balon();
      Balon bB=new Balon();
      b.patearBalon();
      float var1=b.obtenPeso();
      System.out.println("El balón pesa: "+var1);
 
      Bola v;
      v=new Bola();
      Bola vV=new Bola();
      v.lanzarBola();
      float var2=v.obtenPeso();
      System.out.println("La bola pesa: "+var2);
    }
}

Clase-Main
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

Ayuda con Metodo Main en Java Porfavor

Publicado por john (1 intervención) el 09/10/2015 04:36:18
Hola como estas...

Aquí te dejo un enlace donde puedes ver muchos ejercicios así: http://adf.ly/1Pa7Fm
espero te sea de gran ayuda...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Ayuda con Metodo Main en Java Porfavor

Publicado por Juan R. (94 intervenciones) el 09/10/2015 23:08:10
Buenas JennAnn de nuevo

En principio las clases están bien, el MAIN es el problema. Básicamente creas varios objetos sin necesidad (dos por cada clase), luego tienes todas las variables desordenadas (si puedes aprende a declararlas al inicio de cada método, clase, ... hará el código más legible). Y después yendo al quit de la cuestión no te salían todos las acciones (patear, atrapar y peso) porque sólo llamabas a uno de los métodos, ahora ves que se llaman a los métodos desde el Main. Tienes el código que he probado y funciona justo aquí debajo.

main

Un último consejo (de un novato de Java a otro) cuando quieras acceder a las propiedades de una clase llama a los métodos get, por ejemplo getRadio() y cuando quieras enviar datos a las clases setRadio(). Y por lo demás, no mucho más.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar