亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

請教大師們,我定義了接口,但感覺沒用到呀。

package?DaRentCar2;

public?abstract?class?Car?{
	private?String?name;?
	private?int?rentfee;
	private?int?weight;
	private?int?person;
	public?String?getName()?{
		return?name;
	}
	public?void?setName(String?name)?{
		this.name?=?name;
	}
	public?int?getRentfee()?{
		return?rentfee;
	}
	public?void?setRentfee(int?rentfee)?{
		this.rentfee?=?rentfee;
	}
	public?int?getWeight()?{
		return?weight;
	}
	public?void?setWeight(int?weight)?{
		this.weight?=?weight;
	}
	public?int?getPerson()?{
		return?person;
	}
	public?void?setPerson(int?person)?{
		this.person?=?person;
	}
	
}
package?DaRentCar2;

public?interface?IPersonCarry?{
	void?PersonC();
}
package?DaRentCar2;

public?interface?IWeightCarry?{
	public?abstract?void?WeightC();
}
package?DaRentCar2;

public?interface?IWeightPersonCarry?extends?IWeightCarry,?IPersonCarry?{
	void?WeightC();
	
}
package?DaRentCar2;

public?class?Carriage?extends?Car?implements?IPersonCarry?{

	public?Carriage(String?name,int?rentfee,int?weight,int?person){
		this.setName(name);
		this.setRentfee(rentfee);
		this.setWeight(weight);
		this.setPerson(person);
		
	}
	
	
	@Override
	public?void?PersonC()?{
		//?TODO?Auto-generated?method?stub
		System.out.println("可以載人");
	}

}
package?DaRentCar2;

public?class?Pickup?extends?Car?implements?IWeightPersonCarry{
	public?Pickup(String?name,int?rentfee,int?weight,int?person){
		this.setName(name);
		this.setRentfee(rentfee);
		this.setWeight(weight);
		this.setPerson(person);
		
	}
	
	
	@Override
	public?void?PersonC()?{
		//?TODO?Auto-generated?method?stub
		System.out.println("可以載人");

	}

	@Override
	public?void?WeightC()?{
		//?TODO?Auto-generated?method?stub
		System.out.println("可以載貨");		

	}?
}
package?DaRentCar2;

public?class?Truck?extends?Car?implements?IWeightCarry{
	public?Truck(String?name,int?rentfee,int?weight,int?person){
		this.setName(name);
		this.setRentfee(rentfee);
		this.setWeight(weight);
		this.setPerson(person);
		
	}
	
	
	
	@Override
	public?void?WeightC()?{
		System.out.println("可以載貨");		
	}

}
package?DaRentCar2;

import?java.util.Scanner;

public?class?Test?{

	public?static?void?main(String[]?args)?{
		Car?carriage1?=?new?Carriage("奧迪A4",?500,?0,?4);
		Car?carriage2?=?new?Carriage("馬自達6",?400,?0,?4);
		Car?carriage3?=?new?Carriage("金龍",?800,?0,?20);
		Car?pickup?=?new?Pickup("皮卡雪6",?450,?2,?4);
		Car?truck1?=?new?Truck("松花江",?400,?4,?0);
		Car?truck2?=?new?Truck("依維柯",?1000,?20,?0);
		
		System.out.println("歡迎來到大大租車系統");
		System.out.println("是否租車??1:是???0:否");
		Scanner?in?=?new?Scanner(System.in);
		int?choose?=?in.nextInt();
		if(choose?==?0){
			System.out.println("歡迎下次再來,退出租車系統");
			System.exit(0);
		}else?if(choose?!=?0?&&?choose?!=?1){
			System.out.println("輸入有誤,退出系統");
			System.exit(0);
		}else{
			System.out.println("您可租的汽車類型和價目表:");
			System.out.println("序號\t汽車名稱\t租金\t容量");
			System.out.println("1.\t"+carriage1.getName()+"\t"+carriage1.getRentfee()+"/天\t"+"載"+carriage1.getPerson()+"人");
			System.out.println("2.\t"+carriage2.getName()+"\t"+carriage2.getRentfee()+"/天\t"+"載"+carriage2.getPerson()+"人");
			System.out.println("3.\t"+carriage3.getName()+"\t"+carriage3.getRentfee()+"/天\t"+"載"+carriage3.getPerson()+"人");
			System.out.println("4.\t"+pickup.getName()+"\t"+pickup.getRentfee()+"/天\t"+"載"+pickup.getPerson()+"人"+"?載"+pickup.getWeight()+"噸");
			System.out.println("5.\t"+truck1.getName()+"\t"+truck1.getRentfee()+"/天\t"+"載"+truck1.getWeight()+"噸");
			System.out.println("6.\t"+truck2.getName()+"\t"+truck2.getRentfee()+"/天\t"+"載"+truck2.getWeight()+"噸");

		System.out.println("請輸入您要租的車的數量");
		int?num?=?in.nextInt();
		int?n1=0,n2=0,n3=0,n4=0,n5=0,n6=0;
		for(int?i?=0;i<num;i++){
			System.out.println("請輸入您要租車的序號");
			int?N?=?in.nextInt();
			if(N==1){
				n1++;
			}
			if(N==2){
				n2++;
			}
			if(N==3){
				n3++;
			}
			if(N==4){
				n4++;
			}
			if(N==5){
				n5++;
			}
			if(N==6){
				n6++;
			}
		}
			
			int?totalPerson?=?carriage1.getPerson()*n1+carriage1.getPerson()*n2+carriage1.getPerson()*n3
					+pickup.getPerson()*n4;
			int?totalWeight?=?pickup.getWeight()*n4+truck1.getWeight()*n5+truck2.getWeight()*n6;
			
			int?totalRentfee?=?carriage1.getRentfee()*n1+carriage2.getRentfee()*n2+
					carriage3.getRentfee()*n3+pickup.getRentfee()*n4+truck1.getRentfee()*n5+
					truck2.getRentfee()*n6;
			
			System.out.println("請輸入租車天數");
			int?day?=?in.nextInt();
			System.out.println("您的賬單:");
			System.out.println("***可載人的車有:");
			
			if(n1!=0){?
				System.out.print(n1+"臺"+carriage1.getName()+'\t');?
				}?
			if(n2!=0){?
				System.out.print(n2+"臺"+carriage2.getName()+'\t');?
				}?
			if(n3!=0){?
				System.out.print(n3+"臺"+carriage3.getName()+'\t');?
				}?
			if(n4!=0){?
				System.out.print(n4+"臺"+pickup.getName()+'\t');?
				}?
			System.out.println("共載人:"+totalPerson+"人");?
			System.out.println("***可載貨的車有:");?
			if(n4!=0){?
				System.out.print(n4+"臺"+pickup.getName()+'\t');?
				}?
			if(n5!=0){?
				System.out.print(n5+"臺"+truck1.getName()+'\t');?
				}?
			if(n6!=0){?
				System.out.print(n6+"臺"+truck2.getName()+'\t');?
				}?
				System.out.println("共載貨:"+totalWeight+"噸");?
				System.out.println("總租金:"+totalRentfee*day+"元");?}
		}
	}


正在回答

2 回答

用到了 ?知識現在代碼比較少感覺不出來 ? ? 等方法多了就感覺到接口的有用了

0 回復 有任何疑惑可以回復我~
#1

Chase_Java 提問者

在test類里沒用到沒問題嗎?
2016-10-22 回復 有任何疑惑可以回復我~
#2

朱寶華

test類是代碼的實現 ,不需要繼承和接口。感覺不用接口直接用繼承好像簡單點。
2016-10-22 回復 有任何疑惑可以回復我~
#3

Chase_Java 提問者

非常感謝!
2016-10-22 回復 有任何疑惑可以回復我~

用接口的引用可以指向實現了接口的對象,然后就可以引用一些方法什么的

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請教大師們,我定義了接口,但感覺沒用到呀。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號