Programa com"Herança"

5 respostas
L

Ola pessoal esotu precisando de ujma ajudinha de vocês, eu estava tentando fazer um exercicio, mas ta complicado de fazer o main, estou no 3º periodo de SI começando aprender java... e estamos ta etapa da "herança" vamos lá...

Eu tinha que fazer uma sub-classe chamada carro e outras classes que iriam herdar do carro, como gol - uno e saveiro...

Na sub-classe chamada carro tem que ter - Ano- modelo - consumo - cor
Nas outras que vão herdar tem que ter
Gol/Uno/Saveiro - Capacidade - proprietario - autonimia - km

- Apresentar o modelo mais novo p/ usuario
- Apresente o carro mais econômico.
- Criar os Métodos construtores e metodos que se fizeram necessários.
- Criar no mínimo 3 objeto, um para cada modelo, e solicite as informações necessárias....

Eu ja fiz as classes esta faltando o main que fiz uma passoca só rs... Ta complicado de aprender este main.... Vamos lá vou colocar os códigos das classes....

class Carro{
	   String modelo,cor;
           double consumo;
	   int ano;

	Carro (int pano,String pmodelo,double pconsumo,String pcor){
	 
	ano = pano;
	modelo = pmodelo;
	consumo = pconsumo;
	cor = pcor;
	
	}
class Gol extends Carro{

String prop ;
int cap, auto;
double km;

Gol (int cap, double km, String prop, int auto,double km)
{
super ("Gol");
cap=cap;
km=km;
porp=prop;
auto=auto;
}
class Uno extends Carro{

String prop;
int cap, auto;
double km;

Uno (int cap, double km, String prop, int auto, double km)
{
super ("Uno");
cap=cap;
km=km;
porp=prop;
auto=auto;
}
class Saveiro extends Carro{

String prop;
int cap, auto;
double km;

Saveiro (int cap, double km, String prop, int auto, double km)
{
super ("Saveiro");
cap=cap;
km=km;
porp=prop;
auto=auto;
}

:roll:

5 Respostas

Guilherme_Gomes

Primeiro, sub-classe carro? Ou classe mesmo?

Voce não sabe nem começar a fazer o metodo main ou ja tem algo?
O que voce esta fazendo pra compilar seu programa?

diego2005

Você pode fazer + - assim:

public class TesteCarro { public static void main(String[] args) { Gol carro1 = null; Uno carro2 = null; Saveiro carro3 = null; } }

Isso é apensa o começo…agora você tem que instanciar um objeto para cada variável de referência declarada. Vou fazer um de exeplo pra você:

carro1 = new Gol (5, 0, 'Diego', 0, 0);

Qualquer cois é só falar…

T

a) Leia cada linha do programa a seguir e me explique o que cada linha faz.
b) Como mudar este programa de modo que fique de acordo com o que seu professor quer?

/**
 * A superclasse chamada carro tem que ter - Ano- modelo - consumo - cor 
 */
class Carro {
    int ano;
    String modelo;
    double consumo;
    String cor;
    
    public Carro (int pAno, String pModelo, double pConsumo, String pCor) {
        ano = pAno; 
        modelo = pModelo; 
        consumo = pConsumo; 
        cor = pCor;
    }
    
    public String toString() {
        return "Carro: ano = " + ano + ", modelo = " 
        + modelo + ", consumo = " + consumo + ", cor = " + cor;
    }
}
/**
 * As subclasses Gol/Uno/Saveiro têm de ter: Capacidade - proprietario - autonomia - km 
 */
class Gol extends Carro {
    int capacidade; 
    String proprietario;
    double autonomia;
    double km;
    
    public Gol (int pAno, double pConsumo, String pCor, 
                  int pCapacidade, String pProprietario, double pAutonomia, double pKm) {
        super (pAno, "Gol", pConsumo, pCor); 
        capacidade = pCapacidade;
        proprietario = pProprietario;
        autonomia = pAutonomia;
        km = pKm;
    }

    public String toString() {
        return "Gol: ano = " + ano + ", modelo = " 
        + modelo + ", consumo = " + consumo + ", cor = " + cor 
        + ", capacidade = " + capacidade + ", autonomia = " + autonomia 
        + ", km = " + km;
    }
    
}

// Uno e Saveiro são a mesma coisa do Gol, só copiar
 
class ExercicioCarros {

    public Carro carroMaisNovo (Carro[] carros) {
        Carro carro = carros[0];
        int ano = carros[0].ano;
        for (int i = 1; i &lt carros.length; ++i) {
            if (ano &lt carros [i].ano) {
                carro = carros [i];
                ano = carros[i].ano;
            }
        }
        return carro;
    }
    
    public Carro carroMaisEconomico (Carro[] carros) {
        Carro carro = carros[0];
        double consumo = carros[0].consumo;
        for (int i = 1; i &lt carros.length; ++i) {
            if (consumo &lt carros [i].consumo) {
                carro = carros [i];
                consumo = carros[i].consumo;
            }
        }
        return carro;
    }

    public static void main(String[] args) {
        ExercicioCarros ec = new ExercicioCarros();
        Carro[] carros = new Carro[]{
            new Gol (1990, 10.3, "verde", 5, "Leandro", 500.0, 123000),
            new Gol (1993,  9.8, "azul", 5, "Leonardo", 450.0, 233000),
            new Gol (1989, 11.3, "amarelo", 5, "Hudson", 530.0, 303000),
            // Ponha mais carros aqui
        };
        System.out.println ("O carro mais novo:" );
        System.out.println (ec.carroMaisNovo (carros));
        System.out.println ("O carro mais economico:" );
        System.out.println (ec.carroMaisEconomico (carros));
    }
}
L

Ola Guilherme...
Eu sei mais ou menos...
Ta meio complicado isso aqui...
Eu fiz mas acredito que esta errado...
Vou colocar aqui pra vc ver...
Estou tentando fazer ele agora....

class UsaCarro{
	public static void main (String [] args){
		
		Gol g = new Gol (50,100,"Lilian",5,110);
		Uno u = new Uno (50,100,"Angela",3,110);
		Saveiro s = new Saveiro (50,100,"Alex",2,110);
						
		System.out.println("ANO:");
		g=Console.readInt();
		System.out.println("MODELO:");
		g=Console.readString();
		System.out.println("CONSUMO:");
		g=Console.readInt();				
		System.out.println("COR:");
		g=Console.readString();			
		
	}
}

A eu uso o JCreator

Guilherme_Gomes

Serei sincero, nunca usei essa classe Console. Minhas épocas de console acabaram no C/C++ ^^

Quanto ao resto, parece tudo OK, acrescentando o que o thingol ja postou, acho que ja da pra terminar esse projetinho!

Fora isso, não sei qual o problema!

Criado 26 de junho de 2007
Ultima resposta 26 de jun. de 2007
Respostas 5
Participantes 4