2012-08-10 111 views
0

我有多个类,并试图调用另一个类中的方法。 这应该工作,但它给错误:调用另一个类的方法java

TheMethods method = new TheMethods(); 

的Java告诉我,构造TheMethods()是不确定的。 我做错了什么?

编辑: 我需要一个引用传递到我的主类,并对其进行初始化。

回答

1

在您的构造函数中,您有一个参数MCTag m。如果你要使用这个构造器,你需要做的是这样的:

TheMethods method = new TheMethods(MCTag m); 

构造就像任何其他方法,并必须有以正确的参数才能正常工作。

编辑: 这将是这个样子:

MCTag myTag; 
TheMethods method = new TheMethods(myTag); 
method.selectPlayer(); 
+0

“令牌”m“上的语法错误,删除此令牌” – hawkfalcon 2012-08-10 00:30:00

+0

“MCTag m”是数据类型“MCTag”,“m”只是一个变量。所以你需要传入'MCTag'类型的局部变量。 – BlackHatSamurai 2012-08-10 00:31:56

+0

好的。然后参考? – hawkfalcon 2012-08-10 00:35:46

1

你TheMethods提供的唯一的构造是

public TheMethods(MCTag m) {... 

这需要一个MCTag参数,而你试图调用的,因为编译器告诉你,不存在一个无参数的构造函数。

0

添加默认的构造函数与无参数

公共TheMethods(){}

+0

那么我就不能引用主类.. – hawkfalcon 2012-08-10 00:31:54

+0

当您必须创建一个新的TheMethods对象时,请确保您传入一个类型为mctag的参数。这样,你不会遇到错误。 – Neel 2012-08-10 00:47:26

0

我在你的代码中看到的唯一的构造函数是:

public TheMethods(MCTag m) 

,但你不传递任何您的示例代码中的值在这里

此处不存在任何TheMethods()ctor定义

-2

引用一个公共方法在另一个类,叫

Class.Method();