Buona sera a tutti !!
E' da un paio di mesi che sto studiando java.. Ma avrei una domanda da farvi.
Sono arrivato a fare un esercizio per l'ereditarietà.. ( Per le domande che ho da farvi non occorre il testo).
Vi metto il codice che ho fatto per ora e vi dico i miei dubbi:
java.VeicoloAMotore
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package veicoloamotore;
import java.util.Scanner;
public class VeicoloAMotore {
public int annomatricolazione;
public String marca;
public String tipoAlimentazione;
public int cilindrata;
public VeicoloAMotore(int annomatricolazione, String marca, String tipoAlimentazione, int cilindrata) {
this.annomatricolazione = annomatricolazione;
this.marca = marca;
this.tipoAlimentazione = tipoAlimentazione;
this.cilindrata = cilindrata;
}
public int getAnnomatricolazione() {
return annomatricolazione;
}
public void setAnnomatricolazione(int annomatricolazione) {
this.annomatricolazione = annomatricolazione;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getTipoAlimentazione() {
return tipoAlimentazione;
}
public void setTipoAlimentazione(String tipoAlimentazione) {
this.tipoAlimentazione = tipoAlimentazione;
}
public int getCilindrata() {
return cilindrata;
}
public void setCilindrata(int cilindrata) {
this.cilindrata = cilindrata;
}
public static void main(String[] args) {
Furgone fu= new Furgone(2009, "DU 2849 DI", "Metano", 299, 1000);
Scanner sc = new Scanner(System.in);
System.out.print("Anno: ");
int anno = sc.nextInt();
fu.setAnnomatricolazione(anno);
System.out.print("Targa: ");
String marca = sc.nextLine();
fu.setMarca(marca);
System.out.print("Alimentazione: ");
String alimentazione = sc.nextLine();
fu.setTipoAlimentazione(alimentazione);
System.out.print("Cilindrata: ");
int cilindr= sc.nextInt();
fu.setCilindrata(cilindr);
System.out.print("Persone che può portare: ");
int capacit = sc.nextInt();
fu.setCapacitaCarico(capacit);
System.out.println(fu.getInformazioniFurgone());
}
}
java.Furgone
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package veicoloamotore;
/**
*
* @author TommasoF
*/
public class Furgone extends VeicoloAMotore{
private int capacitaCarico;
public Furgone(int annomatricolazione, String marca, String tipoAlimentazione, int cilindrata, int capacitaCarico) {
super(annomatricolazione, marca, tipoAlimentazione, cilindrata);
this.capacitaCarico= capacitaCarico;
}
public int getCapacitaCarico() {
return capacitaCarico;
}
public void setCapacitaCarico(int capacitaCarico) {
this.capacitaCarico = capacitaCarico;
}
public String getInformazioniFurgone(){
return "Anno Matricolazione: "+annomatricolazione+" || "+ "Marca: "+ marca +" || "+ "Tipo Alimentazione: "+tipoAlimentazione+" || "+" Cilindrata: "+cilindrata+" ||"+ "Capacità carico: "+capacitaCarico;
}
}
Io.. volevo dare in input da tastiera i dati per il veicolo.. quindi marca, targa ecc..
1) La mia prima domanda è questa:
Visto che tutti i dati, quindi targa, alimentazione ecc.., gli metto da tastiera perché devo mettere questo:
Furgone fu= new Furgone(2009, "DU 2849 DI", "Metano", 299, 1000); ????? Non capisco.. non potrei semplicemente fare: Furgone fu= new Furgone(); visto che poi gli inserisco tutti io i codici ??
2) Seconda domanda:
Come mai quando lo avvio non mi fa leggere la targa ?? Mi passa direttamente a "alimentazione"..
Spero di essere stato chiaro nelle mie domande... se occorre qualcosa per farvi capire meglio scrivete.. Ringrazio chiunque mi scriva per aiutarmi
Se ho detto qualche cavolata.. Sono all'inizio del mio studio, quindi cercate di capirmi
Grazie.