第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

關(guān)于子類定義final常量的問題

首先定義了父類Car;

然后定義了多個子類,如Aodi;

為了后續(xù)錄入車輛時,同類車型只需錄入型號,不再錄入車名,所以在子類中定義了final變量“”“奧迪”;但運(yùn)行的結(jié)果卻是車名name永遠(yuǎn)為空,無法讀取如“奧迪”等信息。

請問我錯在了哪里???

代碼如下:

package com.imook2;

public class Car {
?public int No;
?public String Name;
?public String Xinghao;
?public float Price;
?public String Type;
?public int TypeNo;
?public int Carring;
?public int CarringNo;
?public String CarringDanwei;
?public void DoType(){
??if(TypeNo==1){
??Type="載人";
?}else if(TypeNo==2){
??Type="載物";
?}else{
??System.out.println("輸入有誤!");
?}
}
?public void DoCarringDanwei(){
??if(CarringNo==1){
???CarringDanwei="p";
?}else if(CarringNo==2){
??CarringDanwei="t";
?}else{
??System.out.println("輸入有誤!");
?}
}
?public void out(){
??System.out.println(No+".? "+Name+Xinghao+"? "+Price+"元/天??????? "+Type+":"+Carring+CarringDanwei);
?}
}

package com.imook2;

public class Aodi extends Car {
?public int No;
?final public String Name="奧迪";
?public String Xinghao;
?public float Price;
?public String Type;
?public int TypeNo;
?public int Carring;
?public String CarringDanwei;
?public int CarringNo;
?
}

package com.imook2;

public class Initail {

?public static void main(String[] args) {
??// TODO 自動生成的方法存根
??? Car car1=new Aodi();
??? Car car2=new Pickup();
??? Car car3=new Songhuajiang();
??? Car car4=new Golden();
??? Car car5=new Mzd();
?? // car1.Name="奧迪";
??? car1.No=1;
??? car1.Xinghao="A4";
??? car1.Price=500;
??? car1.TypeNo=1;
??? car1.Carring=4;
??? car1.CarringNo=1;
??? car2.No=2;
??? car2.Xinghao="";
??? car2.Price=250;
??? car2.TypeNo=2;
??? car2.Carring=80;
??? car2.CarringNo=2;
??? car3.No=3;
??? car3.Xinghao="12";
??? car3.Price=350;
??? car3.TypeNo=1;
??? car3.Carring=7;
??? car3.CarringNo=1;
??? car4.No=4;
??? car4.Xinghao="V8";
??? car4.Price=1500;
??? car4.TypeNo=1;
??? car4.Carring=45;
??? car4.CarringNo=1;
??? car5.No=5;
??? car5.Xinghao="6";
??? car5.Price=400;
??? car5.TypeNo=1;
??? car5.Carring=4;
??? car5.CarringNo=1;
??? car1.DoType();
??? car1.DoCarringDanwei();
??? car2.DoType();
??? car2.DoCarringDanwei();
??? car3.DoType();
??? car3.DoCarringDanwei();
??? car4.DoType();
??? car4.DoCarringDanwei();
??? car5.DoType();
??? car5.DoCarringDanwei();
??? System.out.println("序號?????? 型號??????? 價(jià)格???????? 載人/載物????????? 載重量");
??? car1.out();
??? car2.out();
??? car3.out();
??? car4.out();
??? car5.out();
?}

}

運(yùn)行結(jié)果:

序號?????? 型號??????? 價(jià)格???????? 載人/載物????????? 載重量
1.? nullA4? 500.0元/天??????? 載人:4p
2.? null? 250.0元/天??????? 載物:80t
3.? null12? 350.0元/天??????? 載人:7p
4.? nullV8? 1500.0元/天??????? 載人:45p
5.? null6? 400.0元/天??????? 載人:4p

?

正在回答

3 回答

1.樓主不妨直接在intial類中定義

final String carName="奧迪";

然后令

car1.Name=carName;

car2.Name=carName;

......

2.一開始樓主在Audi中重新定義了一個<?final public String Name="奧迪";>這個具體為啥不對我也不是很清楚,但是這樣肯定不能修改父類中的變量,因?yàn)镴ava中沒有對變量的重寫,只有方法重寫。

3.樓主還可以通過重寫子類構(gòu)造方法以達(dá)到目的

Aodi(){

super.Name="奧迪";

}

萌新一枚,表達(dá)一下我的想法。

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

徊雅0 提問者

非常感謝!
2016-07-07 回復(fù) 有任何疑惑可以回復(fù)我~

你在car父類里定義常量奧迪?那是不對的?。∧氵@樣會造成無法賦值的情況!已經(jīng)是常量了!無法改變原有值了

0 回復(fù) 有任何疑惑可以回復(fù)我~

你的常量奧迪都沒用呀!

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

關(guān)于子類定義final常量的問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號