java - 如何在cmd中运行几个class文件?
问题描述
package emailapp;
import java.util.Scanner;
public class Email {
private String firstName;
private String lastName;
private String department;
private String password;
private String alternativeEmail;
private int mailboxCapacity = 200;
private String email;
private String companyName = "HomeCo.com";
public Email(String firstName, String lastName){
this.firstName = firstName;
this.lastName = lastName;
//System.out.println("Email Created!:" + this.firstName + " " + this.lastName + " ");
this.department = setDepartment();
//System.out.println("Your Email Department: "+ this.department);
this.password = setPassword(8);
//System.out.println("Your Password Is: "+ this.password);
email = firstName.toLowerCase() + "." + lastName.toLowerCase() + "@" + department + "." + companyName;
//System.out.println("Your Email Address Is: "+ email);
}
private String setDepartment() {
System.out.print("CHOICES:\n1.Sales\n2.Development\n3.Accounting\n4.None Of The Above\n");
Scanner Input = new Scanner(System.in);
int choice = Input.nextInt();
if(choice == 1) {
return "sales";
}
else if(choice == 2) {
return "dev";
}
else if(choice == 3){
return "acct";
}
else {
return " ";
}
}
package emailapp;
public class EmailApp {
public static void main(String[] args) {
// TODO Auto-generated method stub
Email em1 = new Email("Rojin","Ebrahimi");
System.out.println(em1.showInfo());
}
}
我编写了一个使用 2 个类的迷你电子邮件生成应用程序:一个名为“Email”的类和另一个名为“EmailApp”的类(包括主类)。它是用 Eclipse 编写的,我试图在 cmd 中运行我的代码,但我很困惑如何首先编译它。
当我输入:
javac EmailApp.java,
它一直告诉我这个:
类 Email 是公共的,应该在一个名为 Email.java 的文件中声明
这些类位于一个名为“emailapp.
解决方案
好吧,你需要完全按照这个错误告诉你的去做。在 Java 中,每个公共类(内部类除外)都需要有自己的文件。
您可能已经将这两个类的代码放在一个名为 EmailApp.java 的文件中。但是您需要将Email 类的所有代码放在一个名为Email.java 的单独文件中。
完成此操作后,您可以使用以下命令在命令行中编译这两个文件:
javac EmailApp.java
javac Email.java
然后运行放置主函数的类(可能是 EmailApp.java 文件:
java EmailApp
评论后更新:
您确定 cmd 在正确的目录中吗?在文件资源管理器中,搜索源文件所在的目录。您应该能够从文件资源管理器的地址栏中复制路径。在 cmd 中,您应该使用以下cd
命令执行目录更改:
cd "put the path to the right directory in here"
注意:如果路径中有空格,请确保将路径放在引号内。
推荐阅读
- objective-c - Xcode 11.2.1 通过 app-Swift.h 上的错误(找不到协议声明)
- php - 我正在尝试在我的 WooCommerce 网站上设置默认增值税
- python - 切片字节对象是否会在 python 中创建一个全新的数据副本
- aws-amplify - 在 Dynamo DB 中使用项目表达式
- php - 我在哪里可以找到带有 PHP 用户片段的扩展程序或网站,以便在 HTML 文件中使用?(Visual Studio 代码)
- android - 缺少 FusedLocationProviderClient.getLastLocation 所需的权限:android.permission.ACCESS_COARSE_LOCATION
- javascript - 在 v-autocomplete 中使用光标选择项目文本时未键入第一个字符
- jquery - JQuery清除所有文本框
- amazon-web-services - Velostrata 云迁移失败
- python - 在 python 中从 SQLite 数据库中裁剪数据