我试图用java

时间:2016-04-13 02:35:19

标签: java oop

当我尝试编译聚合程序时,我收到错误“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中拥有多个公共类。

1 个答案:

答案 0 :(得分:1)

嗯,您的代码实际上有多个错误。您遇到特定错误的原因是import应位于文件的开头,而不是中间。

我理解为什么每个文件只允许一个公共类是:

  1. 让事情变得更清晰。

    通过读取此类的类名和文档,您可以快速了解整个文件的用途。如果我们在一个文件中允许多个公共类,比如C ++,那么我们必须跳转到文件中才能理解它。

    注意Java是一种强大的面向对象语言,即Java中的所有内容都是Object。因此,在导入时,您正在导入文件。如果一个文件包含多个公共类,那将会更复杂。

  2. 简化测试。

    每个公共类都可以有main个函数。您只需main即可运行文件Demo.java的任何java Demo功能。这非常好,因此您可以在main函数中编写测试代码或用法示例,以向其他贡献者展示如何使用此类。

  3. Java中的单一公共类还有其他更深层次的原因。但这些是我的观点。