// veiculo, superclasse
public abstract class Veiculo {
private String modelo;
private String marca;
private int ano;
private String cor;
// Construtor da classe Veiculo
public Veiculo(String modelo, String marca, int ano, String cor) {
this.modelo = modelo;
this.marca = marca;
this.ano = ano;
this.cor = cor;
}
// Métodos getters
public String getModelo() {
return modelo;
}
public String getMarca() {
return marca;
}
public int getAno() {
return ano;
}
public String getCor() {
return cor;
}
// Método para exibir informações do veículo
public void exibirInformacoes() {
System.out.println("Modelo: " + modelo);
System.out.println("Marca: " + marca);
System.out.println("Ano: " + ano);
System.out.println("Cor: " + cor);
}
}
// carro, que herda de veiculo
public class Carro extends Veiculo {
private int numeroPortas;
private boolean arCondicionado;
// Construtor da classe Carro
public Carro(String modelo, String marca, int ano, String cor, int numeroPortas, boolean arCondicionado) {
super(modelo, marca, ano, cor); // Chama o construtor da classe Veiculo
this.numeroPortas = numeroPortas;
this.arCondicionado = arCondicionado;
}
// Métodos getters
public int getNumeroPortas() {
return numeroPortas;
}
public boolean temArCondicionado() {
return arCondicionado;
}
// Método para exibir informações específicas do carro
@Override
public void exibirInformacoes() {
super.exibirInformacoes(); // Exibe as informações gerais do veículo
System.out.println("Número de Portas: " + numeroPortas);
System.out.println("Ar Condicionado: " + (arCondicionado ? "Sim" : "Não"));
}
}
//caminhao, que herda de veiculo
public class Caminhao extends Veiculo {
private double capacidadeCarga;
private boolean baú;
// Construtor da classe Caminhao
public Caminhao(String modelo, String marca, int ano, String cor, double capacidadeCarga, boolean baú) {
super(modelo, marca, ano, cor); // Chama o construtor da classe Veiculo
this.capacidadeCarga = capacidadeCarga;
this.baú = baú;
}
// Métodos getters
public double getCapacidadeCarga() {
return capacidadeCarga;
}
public boolean temBau() {
return baú;
}
// Método para exibir informações específicas do caminhão
@Override
public void exibirInformacoes() {
super.exibirInformacoes(); // Exibe as informações gerais do veículo
System.out.println("Capacidade de Carga: " + capacidadeCarga + " toneladas");
System.out.println("Possui Baú: " + (baú ? "Sim" : "Não"));
}
}
// main, onde irá executar o programa
public class Main {
public static void main(String[] args) {
// Criando um objeto Carro
Carro carro = new Carro("Fusca", "Volkswagen", 1978, "Azul", 2, true);
carro.exibirInformacoes(); // Exibe as informações do carro
System.out.println();
// Criando um objeto Caminhão
Caminhao caminhao = new Caminhao("Scania", "Scania", 2020, "Preto", 18.0, true);
caminhao.exibirInformacoes(); // Exibe as informações do caminhão
System.out.println();
}
}
To embed this program on your website, copy the following code and paste it into your website's HTML: