Java 无法识别的运行时错误--无法启动/控制台
编译并运行程序后,我遇到了一个奇怪的错误。我相信这些被称为运行时错误?对吗?这个程序编译得很好,包括了所有的类。当我打开编译后的程序时,系统会提示我(正确地)输入所有信息,然后当程序应该打印出最终输出时,我会收到一条弹出的错误消息(java咖啡杯上有一个黄色感叹号),上面写着“无法启动Java类文件'Employee10.Java'。检查控制台是否存在可能的错误消息。“如果程序的其余部分运行正常,有人知道我为什么会收到这条消息吗?我的print语句不正确吗?下面我添加了所有的类,以防Employee10.java中不一定有错误。如果有人能帮上忙,我将不胜感激。我是java编程新手,真的需要帮助和帮助。”指导。非常感谢大家 这是雇员Java 无法识别的运行时错误--无法启动/控制台,java,class,compilation,runtime,runtime-error,Java,Class,Compilation,Runtime,Runtime Error,编译并运行程序后,我遇到了一个奇怪的错误。我相信这些被称为运行时错误?对吗?这个程序编译得很好,包括了所有的类。当我打开编译后的程序时,系统会提示我(正确地)输入所有信息,然后当程序应该打印出最终输出时,我会收到一条弹出的错误消息(java咖啡杯上有一个黄色感叹号),上面写着“无法启动Java类文件'Employee10.Java'。检查控制台是否存在可能的错误消息。“如果程序的其余部分运行正常,有人知道我为什么会收到这条消息吗?我的print语句不正确吗?下面我添加了所有的类,以防Employ
public class Employee10
{
public static void main ( String[] args )
{
System.out.println("Begin Program");
Employee e1 = new Employee();
Employee[] arr = new Employee[2];
int j = 0;
for ( int i=0; i < 3; i++)
{
arr[0] = e1;
String nameF = Input.getString("Please enter a First Name");
String nameL = Input.getString("Please enter a Last Name");
int Number = Input.getInt("Please enter an Employee Number");
String Street = Input.getString("Please enter a Street address");
String City = Input.getString("Please enter a City");
String State = Input.getString("Please enter a State");
double Zip = Input.getDouble("Please enter a Zip Code");
int Month = Input.getInt("Please enter a Month in numbers");
int Day = Input.getInt("Please enter a Day");
int Year = Input.getInt("Please enter a Year");
e1.setNumber(Number);
e1.setName( new Name(nameF, nameL));
e1.setAddress(new Address(Street, City, State, Zip));
e1.setHireDate(new Date(Month, Day, Year));
System.out.println(e1.getEmployeeString());
arr[i] = e1;
}
for ( j=0; j < arr.length; j++ )
{
System.out.println( arr[j].getEmployeeString() );
}
}
}
这是日期
public class Date
{
private int month;
private int day;
private int year;
public Date() { month = 0; day = 0; year = 0; }
public void setDate( int m, int d, int y )
{
month = m; day = d; year = y;
}
public String getDateString()
{
return month + "/" + day + "/" + year;
}
public Date( int m, int d, int y )
{
month = m;
day = d;
year = y;
}
}
这是我的名字
public class Name
{
private String NameF;
private String NameL;
public void setNameF ( String F )
{
NameF = F;
}
public void setNameL ( String L )
{
NameL = L;
}
public String getNameString ()
{
return NameF + NameL;
}
public Name ( String F, String L )
{
NameF = F;
NameL = L;
}
public Name ()
{
NameF = "John";
NameL = "Doe";
}
}
这是地址
public class Address
{
private String Street;
private String City;
private String State;
private double Zip;
public void setStreet ( String s )
{
Street = s;
}
public void setCity ( String c )
{
City = c;
}
public void setState ( String T )
{
State = T;
}
public void setZip ( double z )
{
Zip = z;
}
public String GetAddressString ()
{
return Street + City + State + Zip;
}
public Address ( String s, String c, String T, double z )
{
Street = s;
City = c;
State = T;
Zip = z;
}
public Address ()
{
Street = "No street";
City = " No City";
State = "No state";
Zip = 00000;
}
}
这里是输入
import javax.swing.*;
public class Input
{
public static byte getByte( String s )
{
String input = JOptionPane.showInputDialog( s );
return Byte.parseByte( input );
}
public static short getShort( String s )
{
String input = JOptionPane.showInputDialog( s );
return Short.parseShort( input );
}
public static int getInt( String s )
{
String input = JOptionPane.showInputDialog( s );
return Integer.parseInt( input );
}
public static long getLong( String s )
{
String input = JOptionPane.showInputDialog( s );
return Long.parseLong( input );
}
public static float getFloat( String s )
{
String input = JOptionPane.showInputDialog( s );
return Float.parseFloat( input );
}
public static double getDouble( String s )
{
String input = JOptionPane.showInputDialog( s );
return Double.parseDouble( input );
}
public static boolean getBoolean( String s )
{
String input = JOptionPane.showInputDialog( s );
return Boolean.parseBoolean( input );
}
public static char getChar( String s )
{
String input = JOptionPane.showInputDialog( s );
return input.charAt(0);
}
public static String getString( String s )
{
String input = JOptionPane.showInputDialog( s );
return input;
}
}
在Employee类文件中,可以替换
public String getEmployeeString()
{
return name.getNameString() + Number + address + HireDate;
}
与
这似乎没有帮助。这到底应该做些什么来解决这个问题?它对我来说运行良好…您可以使用最新的mac并使用BlueJ编写和编译程序来共享环境详细信息,如IDE、JDK、版本、项目详细信息等。然后会出现一个新文件(一个.class文件)对于我上面发布的6个文件中的每一个。然后我单击并启动Employee10.class文件,输入所有信息,但它就是不被打印。这是我的计算机的问题吗?@Skier1999我在Windows、STS IDE和JDK 1.8上试过。这可能是环境问题。我对BlueJ没有太多的想法。我希望你正在运行你你的类文件像这样,我试着下载Eclipse(一个不同的IDE),它工作了!一定是BlueJ或我的电脑…非常感谢所有的帮助!
public String getEmployeeString()
{
return name.getNameString() + Number + address + HireDate;
}
public String getEmployeeString()
{
return name.getNameString() + Number + address.GetAddressString() + HireDate.getDateString();
}