我基本上是 Java 的新手,为了好玩,我正在创建一个股票市场模拟器/游戏。我知道我的代码并不“完美”,但请记住我是新手,我有 1 个错误。
"Error: Main method not found in class StockPackage.Dog, please define the main method as: public static void main(String[] args)"
我查看了我能找到的所有参数和参数教程,并搜索了 StackOverflow 的问题,但找不到解决方案。
如果可以,有人可以想出一种方法来“删除/修复”错误,或者尽可能地帮助我。提前致谢!
我的代码:
package StockPackage;
import java.util.Scanner;
public class Dog {
public static void main(String[] args, int CurMoney, String[] inputStocks,
int[] StockMoney) {
Dog Run = new Dog();
Run.MainScript();
Run.OptionStartingMethod(inputStocks, CurMoney, StockMoney);
}
//==============================================================================
// ||Objects||
void options(String[] inputStocks, int CurMoney, int[] StockMoney) {
String optionEXIT, optionStartStock, optionBuyStock, optionSellStock;
String optionCheat, optionInfo, optionCredits, optionClose, OptionInput;
int i, j, k;
Scanner optionInput = new Scanner(System.in);
Dog FlixSibling = new Dog();
System.out.println("=============| Options | =============");
System.out.println(" optionEXIT " + " optionStartStock " + "optionBuyStock");
System.out.println(" optionSellStock " + " optionCheat " + " OptionInfo ");
System.out.println(" optionCredits " + " optionClose " + " optionCheckCash");
System.out.println();
System.out.print("==| ");
OptionInput = optionInput.nextLine();
if(OptionInput.equals("optionEXIT")) {
FlixSibling.Close();
} else if(OptionInput.equals("optionStartStock")) {
StartStock(inputStocks, StockMoney, CurMoney);
} else if(OptionInput.equals("optionBuyStock")) {
} else if(OptionInput.equals("optionSellStock")) {
} else if(OptionInput.equals("optionCheat")) {
} else if(OptionInput.equals("optionInfo")) {
} else if(OptionInput.equals("optionCredits")) {
} else if(OptionInput.equals("optionClose")) {
optionClose1(inputStocks, CurMoney, StockMoney);
}
}
//==============================================================================
// ||Option Holders||
void optionClose1(String[] inputStocks, int CurMoney, int[] StockMoney) {
int i, j, k;
for(i = 0; i <= 25; i++) {
System.out.println();
}
MainScript();
for(i = 0; i <= 3; i++) {
System.out.println();
}
}
void OptionStartingMethod(String[] inputStocks, int CurMoney, int[] StockMoney) {
Scanner InputBoard1 = new Scanner(System.in);
String Options;
System.out.println();
System.out.println("Option: Press 'P'");
Options = InputBoard1.nextLine();
if(Options.equals("P")) {
options(inputStocks, CurMoney, StockMoney);
}
}
//==============================================================================
// ||StartStock Method||
void StartStock(String[] inputStocks, int[] StockMoney, int CurMoney) {
Dog StartStocking = new Dog();
String Answer;
String name, price;
int CurCash;
Scanner StartingStockInput = new Scanner(System.in);
System.out.println();
System.out.println("Do you Wish to create a Stock? (y/n)");
Answer = StartingStockInput.nextLine();
if(Answer.equals("y")) {
System.out.println("$15000 Has been taken out of your Account");
CurMoney -= 15000; // for Creating the Stock
System.out.println("Name| ");
name = StartingStockInput.nextLine();
System.out.println("input Amount of Cash| ");
CurCash = StartingStockInput.nextInt();
if(CurCash > CurMoney) {
CurCash = CurMoney;
}
MainScript();
} else if(Answer.equals("n")) {
optionClose1(inputStocks, CurMoney, StockMoney);
}
}
//==============================================================================
// ||Close Method||
void Close() {
System.out.println();
System.out.println();
System.out.println("You Exit'ed out of Stock market SIM");
}
//==============================================================================
// ||Main Method||
void MainScript() {
System.out.println("Welcome to the Stock Market");
// ||Variables||
int StockPercent;
int CurMoney;
String Options;
CurMoney = 64000;
String Place, Place1, Place2;
Place = "0";
Place1 = ",000";
Place2 = ",000,000";
String nothing = "|Under Construction|";
int i, j, k;
Dog Flix = new Dog();
boolean Construction = false;
int[] StockMoney;
StockMoney = new int[500];
String[] inputStocks;
inputStocks = new String[200]; // Used for storing the inputed Stocks
// 50 And Above are used for Creating Stocks
String per = "%";
inputStocks[0] = "Google";
StockMoney[50] = 0;
StockMoney[0] = 400000000; // Using the 2 bit 000's for the millions place;
inputStocks[2] = "MicroSoft";
StockMoney[51] = 0;
StockMoney[1] = 250000000;
inputStocks[4] = "Yahoo";
StockMoney[52] = 0;
StockMoney[2] = 100000000;
inputStocks[6] = "Cheeez It's";
StockMoney[53] = 0;
StockMoney[3] = 50000;
// ||input From User||
Scanner InputBoard = new Scanner(System.in);
// ||Output From Program||
System.out.println("[]---------------| Stocks |---------------[]");
System.out.println(inputStocks[0] + " " + StockMoney[0] + " " + StockMoney[50] + per);
System.out.println(inputStocks[2] + " " + StockMoney[1] + " " + StockMoney[51] + per);
System.out.println(inputStocks[4] + " " + StockMoney[2] + " " + StockMoney[52] + per);
System.out.println(inputStocks[6] + " " + StockMoney[3] + " " + StockMoney[53] + per);
System.out.println();
System.out.println();
if(Construction) {
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
System.out.println(nothing);
}
}
}
最佳答案
您的 main 方法与通常启动 Java 应用程序的标准 main 方法的签名不匹配。你的参数太多了,应该只有一个参数,一个字符串数组。
所以你必须改变这个:
// incorrect main method signature
public static void main(String[] args, int CurMoney, String[] inputStocks, int[] StockMoney) {
为此:
// correct main method signature
public static void main(String[] args) {
并以某种方式获取所需的所有信息,也许是从文件中?
关于java - 如何修复以下错误 : "Error: Main method not found in class",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26290520/