Java 数组位于主方法/类以外的单独类中
我不断地得到这个错误,它是关于在数组去伸缩后需要大括号。 我不知道该怎么办。我想创建一个不在main方法中的数组。我希望数组是用子类填充的超类型。 这是我的密码Java 数组位于主方法/类以外的单独类中,java,arrays,subclass,Java,Arrays,Subclass,我不断地得到这个错误,它是关于在数组去伸缩后需要大括号。 我不知道该怎么办。我想创建一个不在main方法中的数组。我希望数组是用子类填充的超类型。 这是我的密码 public class ArrayTest { Employee [] employees = new Manager[2]; employees[0]= new Manager("Thomas", "Cummings"); } public class Manager extends Employee{ private i
public class ArrayTest {
Employee [] employees = new Manager[2];
employees[0]= new Manager("Thomas", "Cummings");
}
public class Manager extends Employee{
private int employees;
public Manager() {
super();
employees = 0;
}
public Manager(int employees) {
super();
this.employees = employees;
}
public Manager(String f_name, String l_name) {
super(f_name, l_name);
}
public Manager(String f_name, String l_name, int employees) {
super(f_name, l_name);
this.employees = employees;
}
public int getEmployees() {
return employees;
}
public void setEmployees(int employees) {
this.employees = employees;
}
public void setManager(String f_name, String l_name){
this.setF_name(f_name);
this.setL_name(l_name);
}
public void setManager(String f_name, String l_name, int employees){
this.setF_name(f_name);
this.setL_name(l_name);
this.employees = employees;
}
@Override
public String toString(){
return "\nName " + getF_name() + " " + getL_name() +
"\nEmployee ID " + getEmp_id() +
"\nNum of employees " + getEmployees();
}
}
public class Employee {
private String f_name, l_name;
private static long emp_id = 001;
public Employee(){
f_name = "";
l_name = "";
emp_id ++;
}
public Employee(String f_name, String l_name) {
this.f_name = f_name;
this.l_name = l_name;
emp_id ++;
}
public String getF_name() {
return f_name;
}
public void setF_name(String f_name) {
this.f_name = f_name;
}
public String getL_name() {
return l_name;
}
public void setL_name(String l_name) {
this.l_name = l_name;
}
public long getEmp_id() {
return emp_id;
}
public void setEmp_id(long emp_id) {
Employee.emp_id = emp_id;
}
public String toString(){
return "\nName " + getF_name() + " " + getL_name() +
"\nEmployee ID " + getEmp_id();
}
}
这是一条需要放在适当的可执行块(方法、构造函数、初始化块)中的语句
这是一条需要放在适当的可执行块(方法、构造函数、初始化块)中的语句。错误原因如下:
employees[0]= new Manager("Thomas", "Cummings");
因为您不能将可执行语句放在java类的代码块(方法、块、构造函数)之外
解决此问题的一种方法是在构造函数中移动initialization语句:
public class ArrayTest {
Employee [] employees = new Manager[2];
public ArrayTest() {
employees[0]= new Manager("Thomas", "Cummings");
}
}
错误原因如下所述:
employees[0]= new Manager("Thomas", "Cummings");
因为您不能将可执行语句放在java类的代码块(方法、块、构造函数)之外
解决此问题的一种方法是在构造函数中移动initialization语句:
public class ArrayTest {
Employee [] employees = new Manager[2];
public ArrayTest() {
employees[0]= new Manager("Thomas", "Cummings");
}
}