Java servlet中此处不允许使用void类型

Java servlet中此处不允许使用void类型,java,Java,这是我的java类: public String year, title,detail; public League(String year,String title,String detail) { this.year=year; this.title=title; this.detail=detail; } public void getTitle() { System.out.println(""+year+""+title+""+detail+"")

这是我的java类:

   public String year, title,detail;
public League(String year,String title,String detail)
{
    this.year=year;
    this.title=title;
    this.detail=detail;
}
public void getTitle()
{
    System.out.println(""+year+""+title+""+detail+"");
}
这是我的servlet:

     protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
    //Creats the set of league
    leagueList=new LinkedList();
    leagueList.add(new League("2003","Spring","Soccer League(Spring`03)"));
    leagueList.add(new League("2003","Summer","Summer Soccer Fest"));
    leagueList.add(new League("2003","Fall","Fall Soccer League"));
    leagueList.add(new League("2004","Spring","Summer Soccer Fest"));
    leagueList.add(new League("2004","Summer","Soccer League(Spring`03)"));
    leagueList.add(new League("2004","Fall","Fall Soccer League"));
}
这是我的processRequest()方法

out.println(
    ); 迭代器项=leagueList.Iterator(); while(items.hasNext()){ out.println(“
  • ”+League.getTitle()+“
  • ”); } out.println(“
”);

错误是:League.getTitle()//不允许使用void类型

该错误具有很强的描述性。您将返回一个
void
,或者换句话说,
getTitle
方法不返回任何内容。Java无法将void(nothing)的结果连接到
字符串

更改方法以成为合适的getter:

public String getTitle() {
    return title;
}
此外,还要为其他字段创建适当的getter方法:

//year field should be an int rather than a String
public String getYear() {
    return year;
}

public String getDetail() {
    return detail;
}
getTitle()
不返回任何内容(
void
),您正在尝试将其添加到字符串中

使用以下命令:

public String getTitle()
{
    return year + title + detail;
}

我遵循同样的方法,但现在它表明“非静态方法不能从静态上下文引用”。当我将成员变量和成员函数声明为静态时,什么也不会发生。@mukeshvishwas为什么要声明这些字段或方法
static
?那不好。请提供您的确切代码和您的想法。我从这里调用getter方法:out.println(“
  • ”+League.getTitle()+”
  • ”;没有static,它不允许我声明ie.League.getTitle();请参考上面的代码这里是:out.println(“
      ”);迭代器项=leagueList.Iterator();而(items.hasNext()){out.println(“
    • ”+League.getYear()+”
    • ”);out.println(“
    • ”+League.getTitle()+”
    • ”);}out.println(“
    ”;
    public String getTitle()
    {
        return year + title + detail;
    }