Principal puxar atributo através de outra classe [RESOLVIDO]

1. Principal puxar atributo através de outra classe [RESOLVIDO]

Marco Brainiac
mbrainiac

(usa Debian)

Enviado em 26/08/2017 - 20:43h

Como faço para puxar as características de Motor pela classe Carro e imprimir como se fossem parte do carro? E imputar os dados pela Principal?

public class Carro {
String carro, modelo, cor;
double velocidadeAtual, velocidadeMaxima;
Motor motor;


// liga carro
void liga(){
System.out.println("O carro está ligado \n");
System.out.println();
}

// acelera
void acelera(double quantidade){
double velocidadeNova = this.velocidadeAtual + quantidade;
this.velocidadeAtual = velocidadeNova;

}

// Passa marcha
int pegaMarcha(){
if(this.velocidadeAtual < 0){
return -1;
}
if(this.velocidadeAtual >= 0 && this.velocidadeAtual < 40){
return 1;
}
if(this.velocidadeAtual >= 40 && this.velocidadeAtual < 80){
return 2;
}

return 3;
}



}





package Caelum4_9;

public class Motor {
String tipo;
int potencia;
int qtdValvulas;

}







public class Principal {
public static void main(String[] args){
Carro c1 = new Carro();
Motor motor = new Motor();

c1.cor = "azul";
c1.modelo = "fiesta";
c1.velocidadeAtual = 0;
c1.velocidadeMaxima = 80;
c1.motor.potencia = 1000;
c1.motor.tipo = "aspirado";
c1.motor.qtdValvulas = 16;

//liga
c1.liga();

//acelera
c1.acelera(50);

System.out.println(c1.velocidadeAtual);


System.out.println("potencia do motor"+c1.motor.potencia+ "cv \n");
}

}



Tentei mas deu erro na linha 12 ==> c1.motor.potencia = 1000;

Exception in thread "main" java.lang.NullPointerException
at Caelum4_9.Principal.main(Principal.java:12)

Como corrijo?

Podem me dar uma força?



  


2. Re: Principal puxar atributo através de outra classe [RESOLVIDO]

Marco Brainiac
mbrainiac

(usa Debian)

Enviado em 27/08/2017 - 21:26h

Resolvido:

Carro c1 = new Carro();
Motor m1 = new Motor();

m1.potencia = 10;
m1.tipo = "turbo";
c1.motor = m1; // Para atrelar a classe motor na classe Carro
c1.carro = "fusca";







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts