[英]How to go to a different class carry out code and return to previous class
我目前正在大學二年級。 我很難過一年,也看不到自己過去。 但無論如何。 我目前正在研究Java項目。 該項目基於國家汽車測試(NCT)。
基本上我想做的是選擇數字來進行全面測試或重新測試。 如果用戶選擇了完整測試,那么我想進入fullTest類,並從個人信息開始進行一些問題,然后是汽車詳細信息,然后是汽車測試問題。 例如,油位好嗎? 是/否
我想知道的是如何轉到代碼中運行的fulltest類,然后以太顯示來自fulltest類的結果,並將結果返回給mainNct。
package Nct;
import java.util.Scanner;
public class MainNCT
{
public static int choice = -1;
public static void main( String[] args)
{
Scanner Console = new Scanner(System.in);
System.out.println("Menu\n\t1. Full Test\n\t2. Re-test\n\t0. Exit\n");
System.out.print("Enter a number: ");
choice = Console.nextInt();
switch(choice)
{
case 1:
//Go to fulltest class
break;
case 2:
//Go to retest class
break;
case 0:
System.exit(0);
break;
default:
System.out.println("Invalid number entered");
} // switch
}
}
和
package Nct;
import java.util.Scanner;
public class FullTest extends MainNCT {
int wheelAliResult = 0;
String wheelResult;
public FullTest() {
Scanner Console = new Scanner(System.in);
//Questions here
System.out.print("Wheel alingment (%)? ");
wheelAliResult = Console.nextInt();
if(wheelAliResult < 0 || wheelAliResult > 6)
{
wheelResult = "Fail";
}
else
{
wheelResult = "Pass";
}
}
}
根據到目前為止的代碼,由於邏輯似乎全部駐留在FullTest
構造函數中,因此應該這樣做:
switch(choice)
{
case 1:
FullTest ft = new FullTest();
break;
case 2:
ReTest rt = new ReTest();
break;
case 0:
System.exit(0);
break;
default:
System.out.println("Invalid number entered");
} // switch
我假設您也有一個稱為ReTest
的類。
首先在FullTest
類中FullTest
諸如boolean chkOilLevel()
FullTest
類的方法,該方法在評估為以下內容后將返回true
或false
:
boolean chkOilLevel(){
Scanner Console = new Scanner(System.in);
//Questions here
System.out.print("Wheel alingment (%)? ");
wheelAliResult = Console.nextInt();
if(wheelAliResult < 0 || wheelAliResult > 6)
{
wheelResult = true;
}
else
{
wheelResult = false;
}
return wheelResult;
}
您可以通過將MainNCT
的對象設置為FullTest
來調用此類方法:
FullTest fullTest=new FullTest();
並可以在您的MainNCT
類中調用此方法
case 1:
boolean oilLevel=fullTest.chkOilLevel();
// Do Whatever you want with oilLevel
break;
這個東西將來也會對您有幫助...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.