我試圖建立一個食譜程序,要求人們提供有關食譜的信息並存儲它。 該菜單位於一個只是運行的case語句中,並且他們將任何數字推送給他們正在嘗試訪問的東西。但是,無論何時按下任何按鈕,它都會跳過該選項中的內容並返回菜單。我嘗試過調試,但它似乎識別輸入,然後返回到菜單。這裏的類和第一種方法試圖訪問(但不會)試圖做一個簡單的食譜程序
package potluck;
import java.util.*;
import potluck.*;
public class Controller {
private Scanner input;
private Member member;
private AdminMember admin;
private final static int USER_LOGIN = 0;
private final static int CREATE_MEMBER = 1;
private final static int CREATE_ADMIN = 2;
private final static int CREATE_RECIPE = 3;
private final static int COMMENT = 4;
private final static int DELETE_RECIPE = 5;
private final static int EXIT = 8;
public Controller(){
input = new Scanner(System.in);
startUp();//no better name to be thought of
}
public void startUp() {
// TODO Auto-generated method stub
int choice;
do {
this.displayMenu();
choice = input.nextInt();
input.nextLine();// clears carriage return
//depending on choice takes to a different menu
switch (choice) {
// case USER_LOGIN:
// member.enterPassword();
// break;
case CREATE_MEMBER:
new Member();
break;
case CREATE_ADMIN:
Member.addAdmin();
break;
case CREATE_RECIPE:
Recipe.addRecipe();
break;
case COMMENT:
Recipe.addComment();
break;
case DELETE_RECIPE:
Recipe.deleteRecipe();
break;
case EXIT:
System.out.println("Thanks for using our software");
System.exit(choice);
break;
default:
System.out.println("Error, Invalid selection.");
}
} while (choice != 8); //choice 8 exits
}
private void displayMenu() {
System.out.println("1 Create Member");
System.out.println("2 Create Admin Member");
System.out.println("3 Create Recipe");
System.out.println("4 Leave Comment");
System.out.println("5 Delete Recipe");
System.out.println("8 Exit");
System.out.println("Please enter menu option, to exit enter 8");
}
}
這裏是它的嘗試訪問成員類。 包裝食品; import java.util.Scanner; public class Member {
private int memberID = 0;
private String name;
private String alias;
private String email;
private String username;
private String password;
private Scanner scanner = new Scanner (System.in);
public void Member(){ //constructor
memberID =+ 1;
name = "";
alias = "";
email = "";
username = "";
password = "";
setName();
setAlias();
setEmail();
setUsername();
setPassword();
System.out.println("Member Created");
}
public void addMember() {
new Member();
}
所以就像一個概括。我只是試圖讓CREATE_MEMBER選項在目前工作。不管它有什麼問題,其餘的可能也是錯誤的。
你無所事事的會員。它一旦被創建就會被銷燬。實際上,'public void Member()'不是構造函數。構造函數沒有返回類型。這應該可能是'public Member()'你正在使用代碼中不存在的隱式構造函數。 –