私は学生です、そして、はい、これは私の宿題です。私は先週、メモを確認し、本を読み、ネット上で関連するトピックを調査することに費やしましたが、問題が何であるかがわかりません。私が間違っていることを教えてもらえますか?どんな助けでも大歓迎です。(私はメモ帳とコマンドプロンプトのみを使用しています。)
私が与えられたガイドライン:2つのクラスで構成されるJavaアプリケーションを作成します。クラス1がアプリケーションクラスになります。クラス2はCarと呼ばれるクラスになります。アプリケーションは、novaと呼ばれるCarのインスタンスを作成し、それを駆動します。
車のルール:
- 車が始動していないと運転できません(コンソールにエラーメッセージを送信してください)。
- 車が始動していないと停止できません(コンソールにエラーメッセージを送信してください)。
- 車がすでに始動している場合は始動できません(コンソールにエラーメッセージを送信してください)。
- 車に運転するように指示したら、停止するだけです(コンソールにメッセージを送信します)
- 停止を呼び出すと、車は初期状態に戻り、ユーザーは他の機能を実行する前に車を始動する必要があります。(コンソールにメッセージを送信します)
showStateメソッドの目的は、車の状態を検査する方法を提供することです。メッセージを作成し、コンソールに送信できるようにする必要があります。
私のコード:
public class MyAppAssignment3
{
public static void main (String[] args)
{
System.out.println("Scenario 1");
Car nova1 = new Car();
nova1.start();
nova1.showState();
nova1.drive();
nova1.stop();
nova1.showState();
System.out.println("");
System.out.println("Scenario 2");
Car nova2 = new Car();
nova2.showState();
nova2.drive(); //needs to send error message - can't drive a car that's not started
nova2.stop();
nova2.showState();
System.out.println("");
System.out.println("Scenario 3");
Car nova3 = new Car();
nova3.showState();
nova3.start();
nova3.showState();
nova3.stop(); //needs to send error message - can't stop a car that's not driving
nova3.showState();
nova3.drive();
nova3.stop();
}
}
class Car
{
private boolean isStarted;
private boolean isDriving;
private boolean isStopped;
private String showState;
public Car()
{
this.showState = showState;
}
public void start()
{
isStarted = true;
isDriving = false;
isStopped = false;
System.out.println("The car is " + this.showState);
}
public void drive()
{
isStarted = false;
isStopped = false;
isDriving = true;
System.out.println("The car is " + this.showState);
}
public void stop()
{
isStopped = true;
isStarted = false;
isDriving = false;
System.out.println("The car is " + this.showState);
}
public String showState()
{
if (isStarted)
{
showState = "started";
}
else if(isDriving)
{
showState = "driving";
}
else if(isStopped)
{
showState = "stopped";
}
System.out.println("The car is " + this.showState);
return showState;
}
}
私の出力(これはすべて間違っています-値は正しくありません):
Scenario 1
The car is null
The car is started
The car is started
The car is started
The car is stopped
Scenario 2
The car is null
The car is null
The car is null
The car is stopped
Scenario 3
The car is null
The car is null
The car is started
The car is started
The car is stopped
The car is stopped
The car is stopped
これがすべて不安定な投稿をした場合は申し訳ありません。私はそれをうまくタイプしましたが、プレビューは厄介に見えます。