為什么我用數(shù)組調(diào)用屬性的值調(diào)用不過來,運(yùn)行的時(shí)候值為空,不知道為什么
package com.dadachuzuche;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Scanner;
public class Text {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
? ? ?Cat van =new Van(1,"奧迪",500,4);
? ? ?Cat van1=new Van(2,"馬自達(dá)6", 400, 4);
? ? ?Cat van2=new Van(3,"金龍", 800, 20);
? ? ?Cat passengcar=new Passengercar(4,"松花江",400,4);
? ? ?Cat passengcar1=new Passengercar(5,"依維柯",1000,20);
? ? ?Cat pk1=new Pk(6,"皮卡雪6",450,4,2);??
? ? Cat[] cat2={van,van1,van2,passengcar,passengcar1,pk1};//存車的對象
? ??
? ? ?int cat;//判斷是否要租車
? ? ?int maneysum=0;
? ? ?int mansum=0;
? ? ?int zhongliangsum=0;
? ? ?int today;
? ? ?int number;//定義汽車的數(shù)量
? ? ?int i;
? ? ?int cat1;//定義輸入的車輛序號
Scanner san=new Scanner(System.in);//實(shí)例化鍵盤輸入信息
? ? ? ? ? ?System.out.println("歡迎使用答答租車系統(tǒng)");
? ? ? ? ? ?System.out.println("請是否要要租車:1是 0否");
? ? ? ? ? ?cat=san.nextInt();//鍵盤獲取的值賦值給cat
? ? ? ? ? ?switch (cat=1) {//菜單展示全部數(shù)據(jù)
? ? ? ? ? ? ?
? ? ? ? ?case 1:
? ? ? ? ? ? System.out.println("您可租車的類型及其價(jià)格表如下");
? ? ? ? ?case 2:
? ? System.out.println("序號 汽車名稱 租金 容量");
? ? ? ? ?case 3:
? ? System.out.println("1。奧迪A4? 500元/天? 載人:4人");
? ? ? ? ?case 4:
? ? System.out.println("2。馬自達(dá)? ? ? ? 400元/天? 載人:4人");?
? ? ? ? ?case 5:
? ? System.out.println("3。皮卡雪6? 450元/天? 載人:4人? 載貨:2噸");
? ? ? ? ?case 6:
? ? System.out.println("4。金龍? ? ? ? ? ? ? 800元/天? 載人:20人");
? ? ? ? ?case 7:
? ? System.out.println("5。松花江? ? ? ? ? ? 400元/天? ? ? ? ? ? 載貨4噸");
? ? ? ? ?case 8:
? ? System.out.println("6。依維柯? ? ? ? ? ? ? 1000元/天? ? 載貨20噸");
? ? ?break;
? ?default:
? ? System.out.println("輸入信息為否,歡迎下次使用答答租車");
? ? break;
}
? ? System.out.println("請輸入您要租汽車的數(shù)量:");
? ? number=san.nextInt();//獲取車的數(shù)量
? ? Cat[] cat3=new Cat[number];//定義一個(gè)數(shù)組來轉(zhuǎn)要租車的序號
? ? for(i=0;i<number;i++){//
? ? System.out.println("請輸入第"+(i+1)+"輛車序號");
? ? cat1=san.nextInt();
? ? cat3[i]=cat2[cat1-1];
? ? if(cat1<0||cat1>7){
? ? System.out.println("輸入的車輛序號有誤,請重新輸入");
? ? cat1=san.nextInt();
? ? }
? ?
? ?
? ? };
? ? System.out.println("請輸入要租的天數(shù):");
? ? today=san.nextInt();
? ? System.out.println("**** 可用的車有:");
? ? System.out.println("您租用的車載人的有:");
? ? for(int h=0;h<cat3.length;h++){
? ? cat3[h].show();
? ? }
? ? ? ? ? ?
? ? ? ? for(int j=0;j<cat3.length;j++){
? ? ? ? ? ?
? ? ? ? ? ?System.out.println("您租用車的名字:"+cat3[j].getName()+"");
? ? ? ? ? ?
? ? ? ? ? }
? ? ? ? ? ?
? ? ? ? ? ?System.out.println("您的車載人數(shù):"+mansum);
? ? ? ? ? ?System.out.println("您的車載貨數(shù):"+zhongliangsum);
? ? ? ? ? ?System.out.println("您的車租用的錢數(shù):"+(zhongliangsum*today));
? ? ? ? ? ?
? ? ? ? ? ?
? ? ? ? ??
? ? ? ? ??
? ? ? ? ? }
? ? ? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ?/*System.out.println("**** 可用的車有:");
? ? ? ? ? ?System.out.println("您的賬單是:"+(maneysum*today)+"元"+"總載貨量"+zhongliangsum+"總?cè)藬?shù)"+mansum);
? ? ? ? ? */
}
父類
public abstract class Cat {
int id;
String name;
int maney;
int zrs;
int? vsnzh;
public abstract void show();
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getManey() {
return maney;
}
public void setManey(int maney) {
this.maney = maney;
}
public int getZrs() {
return zrs;
}
public void setZrs(int zrs) {
this.zrs = zrs;
}
public int getVsnzh() {
return vsnzh;
}
public void setVsnzh(int vsnzh) {
this.vsnzh = vsnzh;
}
載貨的車
public class Passengercar extends Cat {
? ? ?private int id;
? ? ?private String name;
? ? ?private int maney;
? ? ?private int? vsnzh;
public Passengercar(int Newid,String Newname, int Newmaney, int Newvanzh) {
// TODO Auto-generated constructor stub
? ? this.id=Newid;
this.maney=Newmaney;
this.name=Newname;
this.vsnzh=Newvanzh;
}
public void show(){
System.out.println(name+ maney+"/天"+"載貨:"+vsnzh+"噸");
}
}
PK的車:
public class Pk extends Cat {
private int id;
private String name;
private int maney;
private int zrs;
private int vsnzh;
public Pk(int Newid,String Newname, int Newmaney, int Newzrs, int Newvsnzh) {
// TODO Auto-generated constructor stub
this.id=Newid;
this.maney=Newmaney;
this.name=Newname;
this.vsnzh=Newvsnzh;
this.zrs=Newzrs;
}
public void show() {
// TODO Auto-generated method stub
System.out.println(name+ maney+"/天"+"載貨:"+vsnzh+"噸"? +"載人"+zrs);
}
}
載人的車:
public class Van extends Cat{
private int id;
private String name;
private int maney;
private int zren;
public Van(int Newid,String Newname, int Newmaney, int Newzren) {
// TODO Auto-generated constructor stub
this.name=Newname;
this.id=Newid;
this.maney=Newmaney;
this.zren=Newzren;
?
}
public void show(){
System.out.println(name+ maney+"/天"+"載人:"+zren+"人");
}
??
?
}
2019-01-20
感覺調(diào)不出來
2019-01-20
我和你一樣的結(jié)果算出來是0元
2019-01-10
?for(int j=0;j<cat3.length;j++){
? ? ? ? ? ?
? ? ? ? ? ?System.out.println("您租用車的名字:"+cat3[j].getName()+"");
? ? ? ? ? ?
? ? ? ? ? }
這里方法不能獲取名字的信息,調(diào)用的值為null?