賃借人の名前、郵便番号、レンタカーのサイズ、1 日あたりのレンタル料金、レンタル期間 (日数)、および合計レンタル料金を保持するフィールドを含む CarRental という名前のクラスを作成します。このクラスには、すべてのレンタル データが 1 日あたりの料金と合計料金を受け入れることを要求するコンストラクターが含まれています。料金は、車のサイズに基づいて計算されます: エコノミーは 1 日あたり 29.99 ドル、ミッドサイズは 1 日あたり 38.99 ドル、またはフル サイズは 1 日あたり 43.50 ドル. このクラスには、すべてのレンタル データを表示する display() メソッドも含まれています。
LuxuryCarRental という名前のサブクラスを作成します。このクラスは、レンタル料金を 1 日あたり 79.99 ドルに設定し、1 日あたり 200 ドル追加で運転手を含めるオプションに応答するようユーザーに促します。親クラスの display() メソッドをオーバーライドして、運転手料金の情報を含めます。レンタルに必要なデータをユーザーに要求し、正しい型のオブジェクトを作成する UseCarRental という名前のアプリケーションを作成します。レンタル料金の合計を表示します。
ファイルを CarRental として保存します。java、LuxuryCarRental. java、および UseCarRental. ジャワ
public class CarRental
{
String name;
int zip;
String size;
double dailyFee;
int days;
double total;
public CarRental(String size)
{
if(size.charAt(0)=='e')
dailyFee = 29.99;
else if(size.charAt(0)=='m')
dailyFee = 38.99;
else
dailyFee =43.50;
}
public String getname()
{
return name;
}
public int getzip()
{
return zip;
}
public String getsize()
{
return size;
}
public int getdays()
{
return days;
}
public void computetotal(int days)
{
total = dailyFee*days;
}
public void print()
{
System.out.println("The cost of your rental car is $" + total);
}
}
public class LuxuryCarRental extends CarRental
{
public LuxuryCarRental(String size, int days)
{
super(size);
}
public void computetotal1()
{
super.computetotal(days);
dailyFee = 79.99;
total = dailyFee;
System.out.println(days); //trying to see if days still 0
}
}
import javax.swing.*;
import java.util.Scanner;
public class UseCarRental
{
public static void main(String args[]) throws Exception
{
int days;
String name;
int zip;
String size;
Scanner inputDevice = new Scanner(System.in);
System.out.println("Enter days: ");
days= inputDevice.nextInt();
System.out.println("Enter name: ");
name = inputDevice.next();
System.out.println("Enter zip: ");
zip = inputDevice.nextInt();
System.out.println("Enter size: ");
size = inputDevice.next();
CarRental econ = new CarRental(size);
econ.computetotal(days);
econ.print();
CarPhone full = new CarPhone(size, days);
full.computetotal1();
full.print();
}
}