当我尝试编译聚合程序时,我收到错误“class,interface,enum expected”。这是我的代码。请帮我解决这个问题。
class employee
{
private String name;
private String address;
private float salary;
public employee(String na, String add,float sal)
{
name = na;
address = add;
salary = sal;
}
public void showEmpDetails()
{
System.out.println("Name " + name);
System.out.println("Address " + address);
System.out.println("Salary " + salary );
System.out.println();
}
}
import java.util.vector;
class company
{
private String comname;
private vector vt;
public company(String na)
{
comname = na;
vt = new vector();
}
public void addEmployee(employee e)
{
vt.addElement(e);
}
public void showComDetails()
{
System.out.println("Company Name " + comname);
int x = vt.size();
int y = 0;
while(y<x)
{
object e = vt.elementAt(y);
e.showEmpDetails();
y++;
}
}
}
public class demo
{
public static void main(String[] args)
{
employee e1 = new employee("Ashan","Kandy",2000.0f);
employee e2 = new employee("Steve","California",2500.0f);
employee e3 = new employee("Elon","South Africa",2500.0f);
company c1 = new company("Apple");
c1.addEmployee(e1);
c1.addEmployee(e2);
c1.addEmployee(e3);
c1.showComDetails();
}
}
注意: - 我只收到一个错误。并且任何人都可以告诉我为什么我不能在java中拥有多个公共类。
答案 0 :(得分:1)
嗯,您的代码实际上有多个错误。您遇到特定错误的原因是import
应位于文件的开头,而不是中间。
我理解为什么每个文件只允许一个公共类是:
让事情变得更清晰。
通过读取此类的类名和文档,您可以快速了解整个文件的用途。如果我们在一个文件中允许多个公共类,比如C ++,那么我们必须跳转到文件中才能理解它。
注意Java是一种强大的面向对象语言,即Java中的所有内容都是Object。因此,在导入时,您正在导入文件。如果一个文件包含多个公共类,那将会更复杂。
简化测试。
每个公共类都可以有main
个函数。您只需main
即可运行文件Demo.java
的任何java Demo
功能。这非常好,因此您可以在main
函数中编写测试代码或用法示例,以向其他贡献者展示如何使用此类。
Java中的单一公共类还有其他更深层次的原因。但这些是我的观点。