1、 hashcode() 的作用
equals用来按照自己的规则判断两个对象是否相等,而重写了equals后,按照java的惯例,就需要重写hashCode 。
在java的集合中,判断两个对象是否相等的规则是:
1,判断两个对象的hashCode是否相等
如果不相等,认为两个对象也不相等,完毕
如果相等,转入2
2,判断两个对象用equals运算是否相等
如果不相等,认为两个对象也不相等
如果相等,认为两个对象相等
完毕
2 、Html中 Text域的 readonly 与 disabled 属性的区别
readonly 提交表单
disabled 不提交表单
3 Object 类的方法
public native int hashCode();
public boolean equals(Object obj)
protected native Object clone() throws CloneNotSupportedException;
public String toString()
public final native void notify();
public final native void notifyAll();
public final native void wait(long timeout) throws InterruptedException;
protected void finalize() throws Throwable { }
public final native Class<?> getClass();
4、hashtable 和 hashmap
hashtable:
public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, Serializable key value 不允许为null,不可以重复,同步。 当长度超过 length*0.75后,调用rehash() 方法 , length = oldlength * 2 + 1;hashmap: public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable
key value 都可以为null,不可以重复,不同步。
5、java的多态靠什么机制来实现?
override 和 overload
6、JPS内置对象(转)
1).request对象
request表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, header, 和session数据的有用的方法。客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。
2).response对象 response
表示HttpServletResponse对象,主要将JSP容器处理后的结果传回到客户端。
3).session对象
session表示一个请求的javax.servlet.http.HttpSession对象。指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。
4).out对象
out 对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。
5).page对象
page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例
6).application对象
applicaton 表示一个javax.servlet.ServletContext对象。他实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。
7).exception对象
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象。
8).pageContext对象
pageContext表示一个javax.servlet.jsp.PageContext对象。pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值。
9).config对象
config表示一个javax.servlet.ServletConfig对象。
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象。)
详细参考:http://tingjia-2009.iteye.com/blog/558976
7、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果:(转自 http://hxraid.iteye.com/blog/749507)
- public class Test {
- public static void main(String[] args) {
- System.out.println(new Test().test());;
- }
- static int test()
- {
- int x = 1;
- try{
- return x;
- }
- finally{
- ++x;
- }
- }
- }
运行结果是1,为什么呢?主函数调用子函数并得到结果的过程,好比主函数准备一个空罐子,当子函数要返回结果时,先把结果放在罐子里,然后再将程序逻辑返回到主函数。所谓返回,就是子函数说,我不运行了,你主函数继续运行吧,这没什么结果可言,结果是在说这话之前放进罐子里的。
8 线程的几种状态