Foros del Web » Programación para mayores de 30 ;) » Java »

Error en el main

Estas en el tema de Error en el main en el foro de Java en Foros del Web. Hola a tod@s, estoy emepzando con java, y estoy haciendo uno de mis primeros programas, la cuestion es la siguiente, tengo un archivo main.java con ...
  #1 (permalink)  
Antiguo 30/09/2012, 09:21
Avatar de alejandcc  
Fecha de Ingreso: diciembre-2011
Ubicación: Plasencia
Mensajes: 54
Antigüedad: 12 años, 3 meses
Puntos: 1
Error en el main

Hola a tod@s, estoy emepzando con java, y estoy haciendo uno de mis primeros programas, la cuestion es la siguiente, tengo un archivo main.java con lo siguiente:

package paquete1;
import paquete1.Carro;
import paquete1.Carro.CarroBMW;
public class Main {

/**
* @param args
*/
public static void main(String[] args) {


CarroBMW c;
c = new CarroBMW();
c.apagar();
c.encender();
c.turbo();
}
}

************************ fin main ***************************

Luego tengo este archivo Carro.java, que es donde tengo la clase


package paquete1;

public class Carro {

//variables nativas de la clase
double peso;
double altura;
double ancho;
double largo;
int numeroPuertas;
boolean encendido = false;
String modelo;

//constructores
public Carro(){
this.peso = 1000;
this.altura = 2;
this.ancho = 4;
}

//metodos de la clase
public double obtenerPeso(){
return this.peso;
}

public void encender(){

this.encendido = true;
System.out.println("el coche esta encendido");
}

public void apagar(){

this.encendido = false;
System.out.println("el coche esta apagado");
}

public void estado(){

if(encendido == true){

System.out.println("el coche esta encendido");

}else{

System.out.println("el coche esta apagado");
}
}


class CarroBMW extends Carro {

public CarroBMW(){
this.modelo="BMW";
}

public void turbo(){
System.out.println("acabas de viajar a 120km/h");
}
}
}

**************************** fin Carro.java ********************

El caso es que me da un error en la parte del main, la linea que viene en rojo, es justo el sitio donde me lo da.
El error dice:

Exception in thread "main" java.lang.Error: Unresolved compilation problem:
No enclosing instance of type Carro is accessible. Must qualify the allocation with an enclosing instance of type Carro (e.g. x.new A() where x is an instance of Carro).

at paquete1.Main.main(Main.java:13)

****************** fin error *************************

creo que he importado la clase bien, no se que puede ser, alguien sabria decirme que ocurre ?
gracias.
  #2 (permalink)  
Antiguo 30/09/2012, 10:55
 
Fecha de Ingreso: febrero-2012
Mensajes: 136
Antigüedad: 12 años, 2 meses
Puntos: 8
Respuesta: Error en el main

Acabo de testiar el codigo que pusiste ...

Y todo esta bien ....


Revisa ... en tus clavez en la clase Carro faltan dos llaves .. y en la clase CarroBMW falta una llave

Pero por todo lo demas esta bien. .. me corre perfectamente .
  #3 (permalink)  
Antiguo 01/10/2012, 06:27
Avatar de alejandcc  
Fecha de Ingreso: diciembre-2011
Ubicación: Plasencia
Mensajes: 54
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: Error en el main

no se a que llaves te refieres, yo en el archivo Carro.java no me marca ningun error
  #4 (permalink)  
Antiguo 01/10/2012, 07:29
Avatar de alejandcc  
Fecha de Ingreso: diciembre-2011
Ubicación: Plasencia
Mensajes: 54
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: Error en el main

bueno ya lo solucione, resulta que la clase hijo CarroBMW tiene que estar fuera de la clase padre Carro, es decir, la llave que cierra la clase padre antes de la clase hijo.

class carro {
.........
}

class carroBMW {
..........
}

Etiquetas: clase, jar, main, programa, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:27.