init方法

 init方法是在Servlet实例化之后执行的,并且只执行一次。

.init(ServletConfig)中参数ServletConfig,代表的是配置信息。即在web.xml中配置的信息,比如:
    <servlet>
        <servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
        <servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>true</param-value>
</init-param>        
        <load-on-startup>10</load-on-startup>
    </servlet>
   在程序中可以用this.getServletConfig()方法得到ServletConfig的实例,然后用ServletConfig的相应方法 可以得到ServletConfig的名字(getServletName)和配置参数的名字(getInitParameter("name"))或者 名字枚举(getInitParameterNames()),并且通过参数名字得到相应的参数值。具体方法参见API。

二.init方法:Servlet接口里面只有init(ServletConfig),这是供tomcat调用的。GenericServlet类里面有成员变量ServletConfig,init(ServletConfig)方法和init()方法:

                        private transient ServletConfig config;

                        public void init(ServletConfig config) throws ServletException{
                            this.config=config;
                            this.init();
                        }

                        public void init() throws ServletException{

                        }
           当容器(tomcat)帮忙调用init(ServletConfig config)并且给传过来一个参数config,这个方法把参数对象的引用指向类的成员变量     this.config,并且调用类的 this.init()方法。如果我们在写Servlet类时只要重写init(ServletConfig config)就可以了,但是init()不就成了    多余的了吗?实际上init()方法是为了防止程序员在写Servlet类重写 init(ServletConfig config)时忘记写super.init(ServletConfig          config),这样就容易造成出现空指针异常。而这就要求我们最好不要重写init(ServletConfig config)。
### 回答1: Java 中的 init 方法是一个特殊的方法,它在对象创建时被调用,用于初始化对象的状态。通常情况下,init 方法会在构造函数中被调用,但是在某些情况下,它也可以被其他方法调用。在 init 方法中,可以对对象的属性进行初始化,也可以执行一些其他的初始化操作。 ### 回答2: 在Java中,init方法是一种用于初始化对象的特殊方法,它是在对象被创建后调用的。它通常用于执行一些必要的操作,以确保对象可以正常进行其功能。 init方法在Java中是一种约定俗成的命名方式,它通常在类中被定义为public void init(),并在对象创建后被调用。在Servlet编程中,init方法经常被重写,用于在Servlet对象创建后执行一些初始化操作,例如建立数据库连接、读取配置文件等。 在init方法中,可以执行各种初始化操作,例如初始化对象的成员变量、调用其他方法进行一些预处理等。init方法的具体实现根据具体需求可以有所不同,可以根据实际情况编写适当的代码。 需要注意的是,每个类可以拥有自己的init方法,但通常只有在需要时才会进行重写。此外,init方法是在构造函数执行完毕后被自动调用的,因此在init方法中可以使用构造函数产生的对象。 总而言之,Java中的init方法是一种用于初始化对象的特殊方法,它通常在对象创建后被调用。通过重写init方法,我们可以在对象初始化阶段执行一些必要的操作,以确保对象可以正常进行其功能。 ### 回答3: Java中的init方法是一种特殊的方法,它通常用于初始化对象的状态或执行必要的操作。在Java中,init方法是在对象被创建后自动调用的。它与构造方法紧密相关,但不同之处在于构造方法是用于创建对象并初始化其成员变量,而init方法用于在对象创建后对其进行进一步的初始化或执行一些其他的操作。 在Java中,init方法通常用于以下几个方面: 1. 对象初始化:init方法可以用于设置对象的初始状态,例如对成员变量进行赋值或调用其他方法进行初步的初始化。 2. 资源分配:init方法可以用于分配对象需要的资源,比如打开文件、连接数据库或网络等。 3. 注册监听器:init方法可以用于注册对象需要的监听器,以便在特定事件发生时进行相应的处理。 4. 启动线程:init方法可以用于启动新的线程,用于执行一些耗时的操作,以避免阻塞主线程。 需要注意的是,init方法在Java中没有固定的签名,也就是说,它可以有参数也可以没有参数,可以有返回值也可以没有返回值。其具体的实现方式取决于具体的需求和设计。 总而言之,Java中的init方法是一种用于初始化对象状态或执行必要操作的特殊方法,它在对象创建后被自动调用。通过init方法,我们可以对对象进行进一步的初始化、资源分配、注册监听器或启动线程等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haocm66

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值