我尝试在编译 .java 文件后运行 java 命令,.java 文件包含多个类,但只有一个公共类,公共类中只有一个主要方法。当所有 .class 文件都在同一个地方时,它找不到主类。在 netbeans 上它运行完美,在 CMD 上是出现错误的地方。如果我在写作中有任何错误,也很抱歉,英语不是我的主要语言,它是西班牙语。这也是类和变量名称使用西班牙语的原因。我已经检查过该类只有一个主要方法,所有类都在同一个地方,.java 文件中只有一个公共类这就是代码,正如您所见,只有一个公共课程,而 main 在公共课程中。 package dfutreras_arqapp_aa19_2b; public class Dfutreras_ArqApp_AA19_2B { public static void main(String[] args) { // TODO code application logic here Constructora constructora = new Constructora(); ConstruyeCasas constructor_SencillaCasa = new ConstruyeCasasSencillas(); ConstruyeCasas constructor_FamiliarCasa = new ConstruyeCasasFamiliares(); constructora.setConstruyeCasas(constructor_SencillaCasa); constructora.construirCasa(); Casa casa = constructora.getCasa(); System.out.println("Se ha construido una casa " + casa.getTipo()); System.out.println("Con " + casa.getHabitaciones()+ " habitaciones"); System.out.println("Con " + casa.getBanos()+ " baños"); System.out.println("Con " + casa.getVentanas()+ " ventanas"); System.out.println(); constructora.setConstruyeCasas(constructor_FamiliarCasa); constructora.construirCasa(); Casa casa2 = constructora.getCasa(); System.out.println("Se ha construido una casa " + casa2.getTipo()); System.out.println("Con " + casa2.getHabitaciones()+ " habitaciones"); System.out.println("Con " + casa2.getBanos()+ " baños"); System.out.println("Con " + casa2.getVentanas()+ " ventanas"); } }//产品类`class Casa{` private Integer habitaciones; private Integer banos; private Integer ventanas; private String tipo; public void setHabitaciones(Integer habitaciones){ this.habitaciones = habitaciones; } public void setBanos(Integer banos){ this.banos = banos; }
2 回答
翻翻过去那场雪
TA贡献2065条经验 获得超14个赞
您的班级声明为:
package dfutreras_arqapp_aa19_2b; public class Dfutreras_ArqApp_AA19_2B {
这意味着它在包中dfutreras_arqapp_aa19_2b
,因此: - 运行时必须提供整个包名称,并且 - 当前目录必须位于根(顶级)目录中。
将这些放在一起意味着要运行该类,请转到 src 目录:
C:\Users\hecto_000\Documents\NetBeansProjects\Dfutreras_ArqApp_AA19_2B\src
并运行命令:
java dfutreras_arqapp_aa19_2b.Dfutreras_ArqApp_AA19_2B
要从当前目录运行该类,请package dfutreras_arqapp_aa19_2b
从 .java 文件中删除该行,这意味着该类位于“默认”包中。
巧合的是,还值得一提的是,Java 命名标准是类名应该是“CamelCase”(所以没有下划线)
添加回答
举报
0/150
提交
取消