Si getCapacidaDeCarga() es un método de la clase Camion, y no de Vehiculo, es normal que el compilador "proteste".
Camion camion1 = new camion(130, 15000);
Puesto que Camion hereda Vehiculo, desde su instancia camion1 también se puede acceder a los métodos de Vehiculo.
Perfecto Choces, ahora si me anduvo bien, muchas gracias.
Hola, que tal? Soy novato en esto así que voy a hacer una pregunta bastante básica.
Tengo una clase (supongamos "Vehiculo") de la cual extienden varias clases (supongamos "Camion", "Barco" y "Auto"). Hay propiedades (variables) que son comunes a todos los vehiculos -por ejemplo "velocMax"- por ende se encuentran en Vehiculo y otras que son propias de cada subclase, como por ejemplo "capacidadDeCarga", "calado" o "cantDePasajeros".
Después de crear los constructores correspondientes (y los getters y setters) de cada uno, en el main yo creo varias instancias de las distintas subclases de la siguiente manera:
Vehiculo barco1 = new Barco(50, 15);
Vehiculo auto1 = new Auto(200, 2);
Vehiculo auto2 = new Auto(160, 4);
Vehiculo camion1 = new camion(130, 15000);
Esto lo pongo para ver si no estoy cometiendo ningún error acá.
El problema lo tengo cuando desde el main quiero imprimir e intento acceder a aquellas propiedades que son exclusivas de las subclases -con las comunes no tengo problema-, por ejemplo, "capacidadDeCarga". Si yo hago "camion1.getCapacidaDeCarga();" me tira un error de compilación que no me queda claro por qué se produce y no puedo acceder a dicha propiedad.
Cómo se soluciona ésto? Si alguien pudiera darme una mano estaría muy agradecido.
Saludos.