ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:30.25KB ,
资源ID:9113298      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9113298.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(面试笔试题总结java.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

面试笔试题总结java.docx

1、面试笔试题总结java笔试题部分:1、(北京37期)编程题:编写一段程序用于生成随机码,入参为随机码长度,出参为随机码,要求随机码中必须包含大小写字母及数字,2015/5/515:59:382、(北京37期)编写一段程序用于判断一个字符串是否是合法的IP地址3、笔试题最难的内容:根据给定的表,写一个存储过程:客户信息表(客户编号、客户名称,联系方式.)订单表 (订单号,订单名称,订单价格合计,订单明细信息id,客户编号)订单明细表(id,产品名称,单位,单价,数量)该存储过程要求根据客户编号,查询该客户的订单以及该订单下不同产品价格合计;即: 客户编号、客户 名称、订单号、订单名称、产品id、

2、数量合计、价格合计4、笔试题最恶心的:英文阅读翻译等;脑筋急转弯;5、没涉及到的笔试题(自己XX或者求助同学)6、其他笔试题(老师将上一期学生笔试题内容以图片形式保存了,到时候按时下载)7、不用循环写一个小于5000以2的倍数递增并输出值?上机题:上机题可能有如下几个考点:1、手动搭建SSH框架,写一套增删改查2、解析一个XML文件(sax、DOM解析)3、写一个方法,实现扫描指定路径下某个文件夹中所有文件(获取文件个数,文件名称等);4、使用SSH框架,结合给定页面,实现功能(一般涉及到ajax)面试题部分: 1、谈谈你对java的了解? Java是面向对象的、具有安全性、可移植性、跨平台性

3、、并发性。Java有三个平台J2EE、J2ME、J2SE2、 面向对象的三个特性: 继承封装多态(体现在哪里?) 继承:子类继承父类,子类能够继承父类中非私有的方法或者变量,继承的好处是可以使程序大量的复用;缺点是如果过多继承会导致程序结构庞大 封装:体现在包、访问修饰符以及setget方法取值,还有某些操作封装到方法中 多态:实例化对象,一个类可以new多次,构造方法的重载重写也体现多态;3、面向对象的过程 面向对象分析、面向对象设计、面向对象编程4、java的八个基本数据类型 和对应的包装类和每一种类型的长度 Byte、short、int、long、double、float、char、bo

4、olean5、异常和错误区别? 运行时异常和非运行时异常(编译时异常)区别,说出几个你用过的异常?如何捕获异常?Throws和throw区别? 异常: 程序运行过程中产生的某些错误,程序人员通过修改程序可以修复的,程序员可以预知的错误; 错误: 表示系统级别的错误,例如系统崩溃,jvm内存溢出等;无法预知并且修改程序也无法避免的;运行时异常:表示程序运行过程中产生的异常,可以不强制try catch捕获或者不强制的throws, 程序可以编译通过;非运行时异常:表示程序编译过程中就捕获的异常, 需要强制try catch或者throws抛出, 程序运行时,一旦产生非运行时异常,程序无法编译通过

5、;如何捕获异常? 通过try catch finally try表示放可能产生异常的程序 catch(可能产生的异常)如果符合该异常,此时执行该语句段,表示这里要处理该异常finally不论是否有异常都执行该语句段Throws:在方法声明时使用, 表示该方法可能产生的异常,谁调用该方法,谁捕获处理;当前方法不处理不捕获Throw:表示抛出一个具体异常,使用在方法体中;例如:throw new(“异常消息”);6、String和StringBuffer区别?为什么用StringBuffer拼字符串?String 表示不可长度字符串,finally不可被继承的类;StringBuffer:表示可变

6、长度字符串, 通过append方法追加字符串, 默认有16位缓冲区, 时能new实例化赋值,不能=号赋值;使用StringBuffer拼接字符串以为StringBuffer长度可变,并且通过append方法追加字符串,节省内存:例如: “a”+”b”+”c” 此时字符串池中有: a b c ab abc几个字符串;而通过StringBuffer: 则字符串池中有: a b c 和 abc 7、线程和进程区别?如何理解锁?线程:一段可执行的代码段;多个线程共同完成一个任务;进程:一个可执行的应用程序;解决死锁可以通过:synchronized 关键词,实现多个线程中不同方法,在同一时间内,只能有

7、一个线程在执行;其他线程等待,直到该线程释放资源;8、Wait和sleep方法区别? Wait方法是object类中的,sleep是Thread类中的9、如何定义一个线程? 重写Thread类中的Run方法,或者实现Runnable接口中Run方法10、Collection和Collections区别 Collection是集合接口, Collections是封装了操作集合方法的类;11、Set和List区别 Set无序,不可以重复; List有序,可以重复;12、LinkedList和vector以及ArrayList区别LinkedList: 链表实现, 对该集合新增修改删除数据速度快,效

8、率高,线程不安全;Arraylist:数组实现, 对该集合操作时,从该集合中查询数据速度快,效率高,线程不安全;Vector: 数组实现, 线程安全, 效率低;13、HashMap和HashTable区别: HasMap: 键值对可以为空;线程不安全; HashTable: 键值对不可以为空;线程安全;14、PreparedStatement 和Statement区别: 前者使用预编译sql,效率高,安全,后者未采用预编译sql,效率低;15、名词解释: jdbc、JNDI、BI、VO、DAO、IOC、AOP、OOP、DI(依赖注入)、MVC、ORM(关系映射模型)、盒子模型、JDBC:jav

9、a 数据库链接;即:java提供操作数据库的东西;JNDI:java 命名目录接口;BI:商业智能;VO:值对象;DAO:数据访问对象也就是:java访问数据库的第一层接口;IOC:控制翻转;(Spring时候讲)AOP:面向切面编程(Spring讲)OOP:面向对象编程;DI:MVC:是一种开发模式, M:model模型层, V view 视图层 C Controller 控制层; 控制层主要负责模型层以及视图层数据交互;ORM:关系映射模型;(Hibernate,Mybatis等都是ORM框架)盒子模型:css中的一种模型;将页面元素认为是现实中盒子,他们都具有border 边框Conte

10、nt内容, padding (补白)内边距 margin外边距 等特点,这就是盒子模型;16、接口和抽象类区别?为什么用接口(弥补java单继承特点)?为什么用抽象类(提取公共部分内容,达到代码复用目的和多态)? 接口:是Interface,是一种特殊的抽象类, 为了弥补java单继承的特点,接口可以继承多个接口,也可以实现多个类, 声明的变量为常量, 方法默认public 省略abstract关键词; 使用时必须通过类重写里面所有抽象方法; 抽象类: 是abstract 声明的类,可以有抽象方法,也可以有非抽象方法; 不能被实例化,只能通过子类继承重写里面所有抽象方法,通过实例化子类使用;用

11、抽象类可以提取公共部分,然后子类重写相关方法或者抽象方法,实现多态以及程序的复用;接口目的就是为了弥补单继承缺点;因为接口可以弥补多继承;17、Break(退出整个循环)、continue(退出当前循环,只能用于循环或者switch语句)和return(退出整个方法体表示该方法有返回值)区别18、Finally(异常语句块中的,表示有无异常都执行该方法体)、final(声明变量为常量,声明类不可被继承)、finalize(垃圾回收机制中自动调用的方法)区别19、如何获取随机小数?如何获取随机整数?Math.random() Random.类20、io流的种类? 哪里用到了io流,?什么时候用字

12、节流,什么时候用字符流? 说一下你用过的流有哪些? (1)字节流和字符流 (2) 文件上传下载以及解析xml时加载文件等,还有某些框架底层用到了 (3) 读取文件内容,即文本,使用字符流, 其他情况都是用字节流 (4) 字节流: InputStram,OutputStream FileInputStram、FileOutputStream BufferedInputStream,。 BufferedOutputStream 字符流:Reader、Writer、 BufferedReader、BufferedWriter、FileReader、FileWriter、 InputStreamRea

13、der、OutputStreamWriter 21、内部类种类? 匿名内部类、非静态内部类、静态内部类、局部内部类22、list、set如何重新排序?如何让set有序?重写Comparable 以及Comparator 中的comparaTo以及compare方法23、重写以及重载区别? 重写发生在继承中,子类继承父类,要求子类方法与父类方法名,参数个数,返回值必须相同; 重载是发生在当前类中,方法名相同,参数个数不同,类型不同即可;24、Static用法:static表示声明的变量或者方法只能被实例化一次,并且被一个对象的不同实例共享,类名可直接打点调用;25、super和this区别? S

14、uper调用父类对象,使用时如果在子类构造方法中,必须写第一行,不能用在static中; This表示当前类对象,不能用static中;26、 Jsp的两中包含: 动态包含,被包含页面不独立存在,先包含进来在编译; 静态包含,被包含的页面独立存在,先编译完毕后再包含进来;27、jsp的就个内置对象: out、page、request、session、application、config、pageContext、exception、response 四个作用域: page(最小)、request、session、application(最大)28、过滤器用在哪儿? 即:filter,可以实现权限

15、控制以及转码,某些框架中也使用了(struts2)29、监听器? Session、request、application(ServletContex类型) 监听在线人数、 通过application初始化时加载数据或者配置;30、servlet的声明周期?服务器加载后,servlet容器通过init方法初始化,然后客户端访问服务器时, 经过servlet的指定的urlpattern,然后进入指定servlet类中的service方法处理业务逻辑,然后响应给客户端, 服务器关闭通过destory方法销毁servlet容器;31、Session和Cookie区别: Session表示一次会话,客户

16、端访问服务器端,会有唯一session表示该客户端,有一个sesionid是唯一的; 浏览器关闭只能是断开会话,而session依然存在,直到过期或者手动销毁;(web.xml中可以设置或者通过set. 方法设置有效时间) Session是保留在服务器端的;过多使用给服务器端带来压力;Cookie是键值对存储数据,保留在客户端不安全;32、Jsp中的 区别 可以声明变量也可以写操作; 只能用于声明变量,声明变量是全局的; 表示输出,显示某个字段值,类似于out.print();33、客户端跳转(重定向)或者服务器端跳转(转发)区别? 客户端跳转当页面刷新时,不会再次发送请求,以前的reques

17、t中存放的变量全部失效,并进入一个新的request作用域。 服务器端跳转当刷新页面会再次提交请求,并且服务器端跳转时以前的request中存放的变量不会失效。34、初始化快和静态初始化块区别: 类中写static永远只加载一次,单利的、比构造方法早 类中写 每次加载类都执行,比构造方法早35、为什么用构造方法? (初始化成员变量使用的)36、Js如何操作DOM?什么是DOM(文本对象模型)?(1)按照id获取对象、按照name属性获取、按照标签获取、按照form找 document.getElementById(“”) document.getElementsByName(“”)docume

18、nt.getElementsByTagName(“”)Document.forms0.id或者name属性 38、如何js创建一个节点?如何用jquery创建一个节点? Js: document.createElement(“标签名”) Jquery: $(“”) $(“”)39、Js是否有trim方法? 没有如何做? 没有trim方法;正则表达式写去掉前后空格方法:必须会写:function trimStr(str) return str.replace(/(s*)|(s*$)/g,);40、js如何判断某个字段数据类型? (1)通过赋值,看赋值是什么类型的 (2) typeOf方法判断41

19、、js面向对象写法你懂么?(只是了解,开发用过jquery框架,js面向对象不太了了解)42、JSP指令有哪些?(说出:include和forword即可)JSP中的动作元素包括:include、forward、useBean、getProperty、setProperty、plugin、param。 1.include动作 标签用来包含一个静态或者动态的文件。 2.forward动作 标签用来重定向一个静态HTML文件、JSP文件或者是一个程序段。 3.useBean动作 标签用来在JSP页面中创建一个Bean实例,并指定其名称和作用范围。 4.getProperty动作 标签用来获取Bea

20、n的属性值(在此之前必须用创建它),并将之转化为一个字符串,然后将其插入到输出的页面中。 5.setProperty动作 标签表示用来设置Bean中的属性值。 6.plugin动作 标签用于在浏览器中播放或显示一个对象(典型为applet和Bean),这种显示需要在浏览器上安装Java插件。当JSP文件被编译后送往浏览器时,元素将会根据浏览器的版本替换成或者元素。 7.param动作 标签用来传递参数,必须与forward、include及plugin动作配合使用43、 什么是js的闭包? ( 类似函数嵌套函数的使用,描述一个例子即可) function a() var i=0; functi

21、on b() alert(+i); return b;使用时如下:var c = a();c();44、Js继承用过么?(回答:没有,只用过jquery框架即可)45、Jquery用过继承吗?没有(只了解jquery中$.fn.extend函数,它用于重写jquery中封装的某些方法的,也可以写自定义的插件,相当于继承)46、有一个iframe,当前页面如何选他页面中iframe里面的某个标签?document.frames0.getElementById(“iframe页面中元素id属性值”)iframe如何获取外层页面对象? 在iframe所在页面中,写js代码:window.parent

22、.document.getElementById(“”)47、开发中什么时候使用StringBuilder ,什么时候使用StringBuffer? StringBuilder线程安全, 效率低;(如果同一时间内,只允许一个线程使用字符串追加操作,此时考虑用StringBuilder因为该类中append方法加入了锁关键词) StringBuffer线程不安全,效率高;(如果同一时间内,允许多个线程共同访问并使用拼接字符串操作,此时可以考虑使用StringBuffer)48、Iframe和frame区别? Iframe是嵌套在某个页面中的,iframe包含的页面是独立的窗体;Frameset是

23、将页面拆分几个部分,每个页面不是独立的窗体;49、HTTP的长连接和短连接?长连接:client方与server方先建立连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在。此种方式常用于P2P通信。短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此方式常用于一点对多点通讯。C/S通信。50、说出你用过jquery的那些属性?那些方法(10-20个)?事件?属性和方法:attr(“”) removeAttr(“”) val(“”) 、get() 、ready()、 addClass(“”) 、 css()Remov

24、e() 、parent() /children() / find(“”) /removeClass(“”)/ show()/hide()/ next() /First() last() append() html() text() / before() after() /bind()/ toggle()/ Index offset().pageX offset().pageY $.ajax() $.each() $.trim(“”) $.serialize() /foucs()/ 事件:click(function() Mouseover mouseout dbclick mousemove

25、focus blur 51、说一下jquery的选择器? 按照id找: $(“#”) 按照class属性找: $(“.”) 按照标签名找: $(标签名) 表示过滤的::parent :selected :checked :hidden :visible :not :first :last :eq :lt :gt :even :odd:text :checkbox :input :radio 方法: find(“”) parent(“”) get(下标) children(“”) next(“”) 52、什么是ajax? 为什么用ajax? Jquery如何实现ajax? Ajax可以传输哪些数

26、据格式的数据?(1)ajax是利用js中XMLHttpRequest对象, 实现客户端与服务器端无刷新页面,异步交互数据的技术;可以实现局部刷新;(2) 使用ajax可以实现局部刷新,使用json格式传输数据实现异步效率高,并可以实现页面动画效果;(3)$.ajax() $.post() $.get() $.load() $.getJson()(4)xml/json/text/script/jsonp、html53、$.ajax()方法参数有哪些?url:设置请求路径 、 type:设置提交方式、data:向后台服务器传输数据,格式为&属性=值&属性=值或者属性:值,属性:值dataType:

27、指定客户端接收响应数据的格式,有xml/json/text/script/jsonp、htmlSuccess:回调函数,指定响应成功后指定的回调函数;error:指定服务器响应失败后指定的回调函数54、$.ajax()如果实现发送同步请求? async:属性这只为false55、说一下等你对Hibernate的了解/理解? Hibernate是开源的持久层框架,也是ORM映射关系模型框架,通过对象操作表, 底层是封装了jdbc。它使用了Session一级缓存和二级缓存SessionFactory来减轻对服务器压力,处理表关系时如果关系复杂,针对表关系负责的项目不考虑使用Hibernate,Hi

28、bernate有自带的HQL语句查询以及相关的QBE、QBC等查询方式,采用了预编译sql;53、你说一下对Hibernate的缓存的理解? 一级缓存:session缓存, 针对对象查询起作用, 默认的不可被卸载, 查询时先访问session缓存,然后如果没有数据在访问数据库, 然后获取数据,session缓存也更新, 对数据库数据进行增删改时session缓存同时被更新; 二级缓存:sessionFactory需要配置, 二级缓存中存放的是主键列, 查询时如果配置二级缓存了,先访问二级缓存,如果有id,此时从一级缓存拿数据,如果没有,访问数据库 ,然后将id放入二级缓存,数据放入一级缓存,即

29、缓存更新; 二级缓存被一级缓存共享,并且list查询针对query缓存(前提是配置二级缓存)起作用,iterate方法查询针对一级缓存起作用,前提是配置二级缓存才能开到效果,他发送n+1条sql;54、Hibernate数据持久化时的有几种状态? 瞬时:数据封装到对象中,在执行save或者delete或者update方法之前的状态; 持久化: 事务提交后,数据真正保存到数据库; 游离:事务提交后,数据有session脱管;55、Hibernate的表关系如何配置的?(自己看看关联关系配置:一对多,多对一,多对多,)56、Hibernate 中inverse 和 cascade区别? Inver

30、se 表示反转,配置双向关联关系时,某一方设置为true表示关联关系的控制由对方维护,自身放弃该权利,该权利被扭转了; Cascade表示何时建立这种关联关系, 有很多值,常用的是all、saveoOrupdate等57、Hibernate 中openSession和getCurrentSession区别?openSession表示开启一个新的session, 必须手动关闭getCurrentSession 方法获取session表示该session绑定当前线程, 事务提交,session自动关闭;58、Hibernate中load和get方法区别? Load方法支持懒加载(延迟加载),查询无数据时,报异常为ObjectNotFoundException,返回代理对象 Get方法查询不支持懒加载,查询数据时无数据的话返回 null。59、Hibernate和mybatis区别? Hibernate 处理表关系时繁琐,数据量大时查询速度慢,他的缓存只是为了减少对服务器压力并非是为了查询速度; 因此银行项目不会使用Hibernate, 表关系复杂的项目不会使用Hibernate; My

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1