我只获得了一个用于家庭作业的.class文件,需要编写一个访问其方法的程序。好吧,我有.class文件在同一目录中,但我无法访问其方法,所以我的程序将无法编译!我试过JGrasp和Eclipse。两者都“找不到符号”(方法名称)。
我绝对肯定我正在使用正确的方法名称。为什么不工作?
这是我在Hw.java中的代码
public class Hw {
public static void main(String[] args)
{
int[] a1 = {1, 2, 3, 4, 5};
int[] a2 = {5, 4, 3, 2, 1};
int[] a3 = {1};
int[] a4 = {2, 5, 3, 1, 4};
int[] a5 = {1, 2, 1};
System.out.println(sortA(a1));
System.out.println(sortA(a2));
System.out.println(sortA(a3));
System.out.println(sortA(a4));
System.out.println(sortA(a5));
}
}
我在JGrasp中遇到的错误:
Hw.java:11:错误:找不到符号
的System.out.println(SORTA(A1));
^
符号:方法sortA(int [])
位置:Hw级
答案 0 :(得分:1)
如果sortA
是您所在班级的静态方法,则必须使用班级名称对其进行限定:
System.out.println(GivenClass.sortA(a1));
答案 1 :(得分:0)
你必须创建该类的实例并调用sort方法。
System.out.println(new ThatClass().sortA(a1));
如果sortA(a1)是一个静态方法,你应该在类Name上调用它。
System.out.println(ThatClassName.sortA(a1));
答案 2 :(得分:0)
如何使用另一个类中的out对象访问方法...如果您尝试使用所有排序方法,那么您的.class引用将调用...
答案 3 :(得分:0)
你需要先导入特定的类..打开.class文件顶部你会注意到有一些包名写的..所以请注意它..现在把你的类文件放在你的日食中..并在你的Hw.java中导入该包..确保你这样做..说包名是p1然后以这种方式写import p1.*
以确保你有所有课程..
现在eclipse和其他IDE有智能感知,所以你可以利用它..我的意思是创建该类的对象并使用该对象按期(点。)来了解该类提供的方法与签名..并使用它..
有一点我注意到你没有创建对象来访问sort方法。你需要先做..然后如果方法是静态的..然后进行静态导入,这样你就不必指定类名了......像这样import static p1.*
希望这会有所帮助!!