对于Client类型,方法Registration(String,String,String,String)未定义

时间:2015-11-24 19:01:29

标签: java

            if (type == "REGISTRATION"){
                String name = json.getString("name");
                String Location = json.getString("loc");


                Client.Registration(username, password, name, Location);  //error
                DatabaseController.registerUser(Pobj, userObj);

            }

Client.java

    public static boolean Registration(String username, String password, String name, String loc){

        clientUsername = username;
        clientPassword = password;
        clientname = name;
        clientlocation  = loc;

}

此处定义了注册功能 它给我一个错误:

方法对于Client

类型,未定义Registration(String,String,String,String)

2 个答案:

答案 0 :(得分:1)

在java(以及许多其他编程语言)中,您的方法(或函数)必须具有返回类型。在您的情况下,您将函数的返回类型声明为boolean。但这意味着此方法必须返回布尔值。在您的代码中,您没有返回语句。

要解决此问题:您可以添加return语句,也可以将返回类型更改为void,这意味着它不会返回任何内容。

考虑到你没有在函数中返回任何内容,我建议使用第二个选项,如下所示:

public static void Registration(String username, String password, String name, String loc) 
{ ... }

另外,正如@PeadarÓDuinnín所提到的,Java方法应该用驼峰语写成,这意味着第一个单词不是大写的,但后面的所有单词都是myFunctionThatDoesSomething()。这意味着您的方法应该变为registration(...)

答案 1 :(得分:0)

您的Registration方法(应该是registration。方法/函数是Java中的camelCase。)应该在您的Client类中,如下所示。您还应该返回布尔值或将方法签名更改为public static void registration(...

public class Client {
    public static boolean registration(String username, String password, String name, String loc) {
        clientUsername = username;
        clientPassword = password;
        clientName = name;
        clientLocation  = loc;
    }
}