java中的JSP错误问题

java中的JSP错误问题,java,jsp,Java,Jsp,我已经为一个简单的电子书商店编写了一个javaservlet,出于某种原因,我不明白它为什么不编译。下面我粘贴了代码中给出错误的部分: public void int(ServletConfig conf) throws ServletException { super.init(conf); } 出现的错误如下所示: expected->(公共void^int(Servlet…)…) ”(“预期->piblic void**i**nt 类型的非法开始->公共void int*

我已经为一个简单的电子书商店编写了一个java
servlet
,出于某种原因,我不明白它为什么不编译。下面我粘贴了代码中给出错误的部分:

public void int(ServletConfig conf) throws ServletException {
        super.init(conf);
}
出现的错误如下所示:

  • expected->(公共void^int(Servlet…)…)
  • ”(“预期->piblic void**i**nt
  • 类型的非法开始->公共void int**(*Servlet…
  • ;”应为->公共void int(ServletConfig^conf).
  • expected->public void int(ServletConfig配置**)**…
  • 类型的非法开始->公共void int(ServletConfig conf)**抛出**..
  • ;”应为->公共void int(ServletConfig conf)抛出ServletException^
  • 我真的不明白,这应该是可行的。如果需要,我会发布整个源文件


    任何建议都行。

    public void int无法完成选择void或int;您应该重命名方法名称,因为int是一个保留字

    public void int无法完成选择void或int;您应该重命名方法名称,因为int是一个保留字

    您不能使用像
    int
    这样的关键字作为标识符n Java。这是Java中所有代码特有的。我猜您正在尝试重写
    init(ServletConfig)
    方法:

    public void init(ServletConfig conf) throws ServletException {
        super.init(conf);
    }
    

    出于学习目的,这是可以的,但理想情况下,您应该覆盖Servlet中的no arg,以免您做了一些使Servlet生命周期失控的事情。不要覆盖
    init(ServletConfig)
    除非绝对必要。

    您不能在Java中使用
    int
    等关键字作为标识符。这是Java中所有代码特有的。我猜您是在尝试重写
    init(ServletConfig)
    方法:

    public void init(ServletConfig conf) throws ServletException {
        super.init(conf);
    }
    
    public void **init**(ServletConfig conf) throws ServletException {
            super.init(conf);
    }
    
    出于学习目的,这是可以的,但理想情况下,您应该覆盖Servlet中的no arg,以免您的操作导致Servlet生命周期失控。除非绝对必要,否则不要覆盖
    init(ServletConfig)

    public void **init**(ServletConfig conf) throws ServletException {
            super.init(conf);
    }
    
    它应该是init,而不是int。您正在从此init方法调用超类的init方法

    这是访问servlet中ServletConfig对象的方法之一

    另一种方法是打电话

    ServletConfig conf = getServletConfig();
    
    在加载servlet实例时调用init方法

    它应该是init,而不是int。您正在从此init方法调用超类的init方法

    这是访问servlet中ServletConfig对象的方法之一

    另一种方法是打电话

    ServletConfig conf = getServletConfig();
    

    当加载servlet实例时调用init方法。

    当您定义如下方法时

    public void int(ServletConfig conf)
    
    公开:可接受性

    作废:返回类型

    int:方法名称

    ServletConfig:方法接受的参数类型

    conf:传递的参数

    现在不会有任何错误,而且该方法可以完美地工作

    但是java保留了不能用于任何其他目的的关键字

    在您的例子中,int,您使用它作为方法名称

    但是int是定义int类型变量的保留键盘

    进一步说

    在servlet生命周期中

    你有三种方法

    1:init

    2:服务

    3:摧毁

    显然,您正试图初始化servlet,调用init方法

    您面临的错误只是一个简单的打字错误


    定义方法时,只需将initilize方法从int重命名为init

    public void int(ServletConfig conf)
    
    公开:可接受性

    作废:返回类型

    int:方法名称

    ServletConfig:方法接受的参数类型

    conf:传递的参数

    现在不会有任何错误,而且该方法可以完美地工作

    但是java保留了不能用于任何其他目的的关键字

    在您的例子中,int,您使用它作为方法名称

    但是int是定义int类型变量的保留键盘

    进一步说

    在servlet生命周期中

    你有三种方法

    1:init

    2:服务

    3:摧毁

    显然,您正试图初始化servlet,调用init方法

    您面临的错误只是一个简单的打字错误


    只需将initilize方法从int重命名为init

    请发布整个源代码file@shreyanshjogi不需要,错误很明显。@Manolis Tsilikidis据我所知,不建议使用参数重写init方法。如果在servlet开始工作之前需要执行某些操作,请使用参数重写init方法请发布完整的源代码file@shreyanshjogi不需要,错误很明显。@Manolis Tsilikidis据我所知,不建议使用参数重写init方法。如果在servlet开始工作之前需要做些什么,请使用参数重写init方法。@JoopEggen init有问题,它用于许多复杂的对象和d他在处理servlet,所以他会经常使用init;无论如何,如果这回答了您的问题,那么自定名称将是明智的,我想获得“已接受”的manolis,谢谢。名称的提示是调用
    super.init(conf)
    @JoopEggen噢,我现在还没看到它,我猜我的大脑在第一个int+1之后将init转换为int。无论如何,正如Aleksei在上面所说的,转换init是有问题的。@JoopEggen init是有问题的,它被用于许多复杂的对象,他正在处理servlet,所以他会经常使用init;如果这能回答你的话,一个自我命名的名字将是明智的r问题我想得到“已接受”的manolis,谢谢。名字的提示是调用
    super.init(conf