无法在类中定义方法

时间:2016-03-04 20:08:47

标签: java methods

我正在尝试在Eclipse中创建一个简单的Java类,它通过api引入一个JSON数组。我正在尝试添加一个方法来返回一个字符串值,这会产生错误。看来Java并不认为它是一种方法。

import org.springframework.web.client.RestTemplate;

public class GetSurvey {
    public static void main(String[] args)
    {
        int SurveyID   = 2107240;
        String SurveyDate = "2016-01-07";
        String SurveyType;
        String apiurl = "https://restapi.surveygizmo.com/v4/survey/" + SurveyID + "...";
        String Result(){
            return restTemplate.getForObject(apiurl,String.class);
        }
    }
}

这导致以下错误:

  

令牌“String”上的语法错误,新的预期

     

无法将结果解析为类型

     

语法错误,插入“;”完成声明

     

Void方法无法返回值

似乎没有将 String Result(){识别为方法。我在没有定义方法的情况下创建了类,并且没有错误。

3 个答案:

答案 0 :(得分:2)

解决错误。除了你不能在方法中定义方法。

  

令牌上的语法错误"字符串",新的预期

Java语法正在寻找像String s = new String()这样的对象声明。

  

无法将结果解析为类型

Result()未定义为方法,因此尝试调用,但无法调用。

  

语法错误,插入&#34 ;;"完成声明

String Result()预计以分号结束。

  

Void方法无法返回值

不言自明,return;方法不能void main

看起来你打算这样做

import org.springframework.web.client.RestTemplate;

public class GetSurvey {

   @Autowired
   private RestTemplate restTemplate;

    private static String getTemplate(String apiUrl) {
        return restTemplate.getForObject(apiUrl,String.class);
    }

    public static void main(String[] args)
    {
        int SurveyID   = 2107240;
        String SurveyDate = "2016-01-07";
        String SurveyType;
        String apiurl = "https://restapi.surveygizmo.com/v4/survey/" + SurveyID + "...";
        String result = getTemplate(apiurl);
    }
}

答案 1 :(得分:1)

您无法在main方法中定义方法。

答案 2 :(得分:1)

您通过在其他人中定义方法来嵌套方法,这不是java的工作原理..

移动方法

String Result(){
    return restTemplate.getForObject(apiurl,String.class);
}

超出main方法。 并且要小心返回的val的范围。