我有一个班级员工
import javax.swing.*;
public abstract class Employee {
public static void searchEmp(int id) {
JOptionPane.showMessageDialog(null, "done");
}
}
现在我有另一个班级考试:
public class `test` {
public static void main(String args[]) {
searchEmp(2);// here my programme give error
}
}
我想从类测试中调用属于Employee的searchEmp()
,但它会出错。请建议任何没有继承的解决方案。
答案 0 :(得分:6)
您必须致电Employee.searchEmp()
。
静态方法searchEmp()
仍然是类Employee
的成员,您必须通过其类进行静态调用。
同样,班级Employee
必须对班级test
可见,否则您必须导入它。我假设这两个类位于同一个包中,因此在您的情况下这不会成为问题。
答案 1 :(得分:2)
静态方法和属性绑定到类。因此,您需要使用ClassName.methodName
或ClassName.propertyName
。
Employee.searchEmp();
答案 2 :(得分:1)
您的Test类没有静态searchEmp(int)方法,因此错误:
searchEmp(2);// here my programme give error
应该是
Employee.searchEmp(2);
使用ClassName.staticMethod()