您好,欢迎访问三七文档
1.String覆盖了equals方法和hashCode方法,而StringBuffer没有覆盖equals方法和hashCode方法2.数组没有length()这个方法,有length的属性。String有length()这个方法。数组中没有length()这个方法,但是数组中有length这个属性。用来表示数组的长度。String中有length()这个方法。用来得到字符串的长度。3.error和exception的区别:error内存溢出。不可能指望程序能处理这样的情况。exception表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。4.有两种实现方法:分别是继承Thread类与实现Runnable接口5.同步的实现方法有两种:分别是synchronized,wait与notify6.Vector和ArrayList的区别:线程方面:vector是线程安全的,也就是说是它的方法之间是线程同步的,而ArrayList是线程序不安全的,它的方法之间是线程不同步的。数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半。7.List中存储的数据是有顺序,并且允许重复;Map中存储的数据是没有顺序的,其键是不能重复的,它的值是可以有重复的。(List、Map、Set三个接口,存取元素时,各有什么特点?List以特定次序来持有元素,可有重复元素。Set无法拥有重复元素,内部排序。Map保存key-value值,value可多值。)8.Collection是集合类的上级接口,继承与他的接口主要有Set和List.Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作(Collection?和?Collections的区别。Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。Collection是个java.util下的接口,它是各种集合结构的父接口。Collection是集合的根接口,其下有set及listCollections是集合的算法。)9.说出ArrayList,Vector,LinkedList的存储性能和特性ArrayList和Vector都是使用数组方式存储数据而LinkedList使用双向链表实现存储10.(71)说出一些常用的类,包,接口,请各举5个类:BufferedReaderBufferedWriterFileReaderFileWritewrStringInteger包:java.langjava.awtjava.iojava.utiljava.sql接口:ListSetMapCollectionSerializableComparable11.字节流,字符流。字节流继承于InputStreamOutputStream,字符流继承于InputStreamReaderOutputStreamWriter12.关键字:throws,throw,try,catch,finally分别代表什么意义?throws是获取异常throw是抛出异常try是将会发生异常的语句括起来,从而进行异常的处理,catch是如果有异常就会执行他里面的语句finally不论是否有异常都会进行执行的语句。13.使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的14.静态变量和实例变量的区别?在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。15.Integer与int的区别int的默认值为0,而Integer的默认值为null。即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况16.接口是否可继承接口?抽象类是否可实现(implements)接口?接口可以继承接口。抽象类可以实现(implements)接口。17.面向对象的特征有哪些方面封装:面向对象的封装就是把描述一个对象的属性和行为的代码封装在一个“模块”中,也就是一个类中,抽象:抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个类只考虑这些事物的相似和共性之处,并且会忽略与当前主题和目标无关的那些方面,将注意力集中在与当前目标有关的方面。继承:在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并可以加入若干新的内容,或修改原来的方法使之更适合特殊的需要,这就是继承。继承是子类自动共享父类数据和方法的机制,这是类之间的一种关系,提高了软件的可重用性和可扩展性。多态:18.一个类可以实现多个接口,但只能继承一个抽象类。--------------------------------------------------------19、String是最基本的数据类型吗?基本数据类型包括byte、int、char、long、float、double、boolean和short。java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类20.是否可以继承String类?String类是final类故不可以继承。21.String覆盖了equals方法和hashCode方法,而StringBuffer没有覆盖equals方法和hashCode方法22.jsp有哪些内置对象?作用分别是什么?答:JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):request用户端请求,此请求会包含来自GET/POST请求的参数response网页传回用户端的回应pageContext网页的属性是在这里管理session与请求有关的会话期applicationservlet正在执行的内容out用来传送回应的输出configservlet的构架部件pageJSP网页本身exception针对错误网页,未捕捉的例外requestresponsesessionapplicationoutpagepageContextexceptionconfig23.jsp有哪些动作?作用分别是什么?答:JSP共有以下6种基本动作jsp:include:在页面被请求的时候引入一个文件。jsp:useBean:寻找或者实例化一个JavaBean。jsp:setProperty:设置JavaBean的属性。jsp:getProperty:输出某个JavaBean的属性。jsp:forward:把请求转到一个新的页面。jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记24.说一说Servlet的生命周期?答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。(Servlet的生命周期?答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。)25.Jsp页面中的form标签里的method属性为get时调用doGet(),为post时调用doPost()。26.jsp与servlet的区别:JSP是Servlet技术的扩展,本质上是Servlet的简易方式JSP侧重于视图,Servlet主要用于控制逻辑。27.列举几个JDBCA中常用的类或接口1、DriverManager加载驱动并连接到数据库2、Connection数据库连接对象3、Statement用来建立和执行语句4、ResultSetsql语句执行的结果28.&和&&的区别。????????&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。29.Strings=newString(xyz);创建了几个StringObject?两个对象,一个是“xyz”,一个是指向“xyz”的引用对象s。在栈中建了一个引用对象s在堆中建了一个对象xyz30.sleep和wait有什么区别这两个方法来自不同的类分别是Thread和Object最主要是sleep方法没有释放锁,而wait方法释放了锁sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常31.同步和异步的区别同步是指两个线程的运行是相关的,其中一个线程要阻塞等待另外一个线程的运行。异步的意思是两个线程毫无相关,自己运行自己的。32.线程同步的方法wait()sleep()notify()notifyAll()33.JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么??JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是类servlet。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。34.谈谈你对Struts+Spring+Hibernate的理解???谈谈你对Struts的理解?struts很好的将应用程序进行了分层,使开发者更关注于业务逻辑的实现Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。谈谈你对Hibernate的理解?对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码hibernate为Java应用提供了一个易用的、高效率的对象关系映射框架hibernate的性能非常好,因为它是个轻量级的持久性框架,功能丰富。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系谈谈你对Spring的理解?其核心技术是IOC(依赖注入)和AOP(面向切面编程)Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring用来管理类,实现更大程度上的解耦spring就是作为容器,用来管理struts和hibernate之间的工作的。它其实就是程序中的一个桥梁或者说管理者,整个程序的运行都依靠spring来管理。用什么方法来管理呢?最常见的就是IOC了。----------------------------------------------------35.Struts1和Struts2的区别Struts1Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。Struts2Action对象为每一个请求产生一个实例,因此没有线程安全问题36.谈谈你mvc的理解MVC是Model—View—Controler的简称。即模型—视图—控制器。MVC是一种设计模式,它强制性的把应用程序的输入、处理和输出分开。MVC中的模型、视图、控制器它们分别担负着不同的任务。视图(V):视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并接受用户的输入。视图不进行任何业务逻辑处理。模型(M):模型表示业务数据和业务处理。相当于JavaBean。一个模型能为多个视图提供数据。这提高了应用程序的重用性控制器(C):当用户单击Web页面中的提交按钮时,控制器接受请求并调用相应的模型去处理请求。然后根据处理的结果调用相应的视图来显示处理的结果。MVC的处理过程:首先控制器(C)接受用户的请求,调用相应的模型(M)来进行业务处理,并返回数据给控制器。控制器调用相应的视图(V)来显示处理的结果。并通过视图呈现给用户。同步和异步有何异同JSP和Servlet有哪些相同点和不同点重定向与转发的区别谈谈你对Struts/Hibernate/Spring的理解请用冒泡排序或者选择排序实现一个对一
本文标题:Java面试题归纳
链接地址:https://www.777doc.com/doc-2881686 .html