Java employee1上的方法声明需要返回类型无效

Java employee1上的方法声明需要返回类型无效,java,Java,我在public static Employee1上收到一个错误,说它需要一个必需的返回类型,并且方法声明无效。我试着改变它,但我不知道我做错了什么。很抱歉,我对java有点陌生 import java.util.Scanner; public class aleko_Employee1 extends Object { private String firstName; private String lastName; private char middleInitial; private

我在public static Employee1上收到一个错误,说它需要一个必需的返回类型,并且方法声明无效。我试着改变它,但我不知道我做错了什么。很抱歉,我对java有点陌生

import java.util.Scanner;

public class aleko_Employee1 extends Object
{
private String firstName;
private String lastName;
private char middleInitial;
private boolean fulltime;
private char gender;
private int employeeNum;
private static Scanner in = new Scanner(System.in);

public class aleko_Employee1
{

public static void main(String args[])
{
    aleko_Employee1 employee1 = new aleko_Employee1("Jeff", "Doe", 'M', 12345);
    aleko_Employee1 employee2 = new aleko_Employee1("Jeffery", "Doe", 'M', 12345);
    aleko_Employee1 employee3 = new aleko_Employee1("Amanda", "Smith", 'M', 98765);
}
public static Employee1(String fn, String ln, char g,  int en)
{

    firstName = fn;
    lastName = ln;
    gender = g;
    employeNum = en;
}

public void setfirstName(String fn)
{
    firstName = fn;
}

public String getFirstName()
{
    return firstName;
}

public void setLastName(String ln)
{
    lastName=ln;
}

public String getLastName()
{
    return lastName;
}

public void setGender(char g)
{
    gender =g;
}

public char getGender()
{
    return gender;
}

public void setEmployeeNumber(int en)
{

    if ( en > 99999 || en < 10000)
    {
        employeeNum = en;
    }
    else
    {
        employeeNum = 0;
    }
}
public int getEmployeeNumber();
{
    return employeeNum;
}

public boolean equals( Object e2)
{
    if (this.employeeNum == ((Employee1)e2).employeeNum)
    {
        return true;
    }
    else
    {
        return false;
    }
}

public String toString()
{
    return lastName + ","+ "\n" + "ID:" + employeeNum + "\n";
}
}
}改变

public static Employee1(String fn, String ln, char g,  int en)
{
...
}
为了避免这种情况,您总是需要在方法中指定一个返回类型,如果它不返回任何内容,那么它是空的

或者,如果它应该是构造函数,则不在构造函数中指定返回类型

public aleko_Employee1(String fn, String ln, char g,  int en)
{
...
}

您可能试图定义构造函数,但最终在此处定义了一个方法:

public static Employee1(String fn, String ln, char g,  int en)
{

    firstName = fn;
    lastName = ln;
    gender = g;
    employeNum = en;
}
构造函数需要与类的名称相同,并且没有任何返回类型。因此,将其更改为:

public aleko_Employee1(String fn, String ln, char g,  int en)
{

    firstName = fn;
    lastName = ln;
    gender = g;
    employeNum = en;
}
当您使用新运算符创建对象时,将调用构造函数。因此,现在当您按照此处所述创建对象时:

aleko_Employee1 employee1 = new aleko_Employee1("Jeff", "Doe", 'M', 12345);
aleko_Employee1 employee2 = new aleko_Employee1("Jeffery", "Doe", 'M', 12345);
aleko_Employee1 employee3 = new aleko_Employee1("Amanda", "Smith", 'M', 98765);

JVM将调用上面提到的匹配构造函数。

很抱歉,我刚刚复制粘贴了。非常感谢,这是公共aleko_员工1
aleko_Employee1 employee1 = new aleko_Employee1("Jeff", "Doe", 'M', 12345);
aleko_Employee1 employee2 = new aleko_Employee1("Jeffery", "Doe", 'M', 12345);
aleko_Employee1 employee3 = new aleko_Employee1("Amanda", "Smith", 'M', 98765);