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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

Java基础面试题及答案Word文档格式.docx

1、4.以下语句序列执行后,k 的值是 ( ) int x=6, y=10, k=5; switch( x % y ) case 0: k=x*y; case 6: k=x/y; case 12: k=x-y; default: k=x*y-x;A.60B.5C.0D.545.设 a = 8,那么表达式 a 2 的值是:无符号右移动( )A.1B.2C.3D.46.以下程序class Test public static void main(String args) doSomething(1); doSomething(1,2); /insert code here在程序中插入以下哪一行代码可以

2、编译通过: A static void doSomething(int args)B static void doSomething(int. args)C static coid doSomething(int.args,int x)D static void doSomething(int x,int.args)简答题1.现有一个长度为20的数组,数组的数字0-9之间的任意数字,统计出数组中每个元素出现的次数?现有一个字符串fdasafdasfdasa,现统计出子串as出现的次数.2.请描述冒泡排序算法的根本思想。3.一个数组中只有0,1两种数字,进展排序,0全部在前,1全部在后OOP局部

3、1.(单项选择)关于以下代码说确的是:public class A private int counter = 0; public static int getInstanceCount() return counter; public A() counter+; public static void main(String args) A a1 = new A(); A a2 = new A(); A a3 = new A(); System.out.println(A.getInstanceCount();A.该类编译失败B.输出:1C.输出:3D.输出:2.试图编译和运行以下代码,将获得

4、什么结果(JAVA)class Base int i = 99; public void amethod() System.out.println(Base.amethod(); Base() amethod();public class RType extends Base int i = -1; public static void main(String argv) Base b = new RType(); System.out.print(b.i+t b.amethod(); RType r = (RType)b; System.out.print(r.i+ public void

5、amethod() System.out.print(RType.amethod()+A RType.amethod -1 RType.amethod -1B RType.amethod 99 RType.amethod -1C 99 RType.amethod 99D 编译时错误(pile time error)3、下边程序运行的结果是? ( ) Base() System.out.print(Basepublic class Alpha extends Base public static void main( String args ) new Alpha(); new Base();A

6、.BaseB.BaseBaseC.程序编译失败.D.程序运行但没有任何输出4.指出以下程序运行的结果 public class Example String str=new String(good charch=a,bc; public static void main(String args) Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+ and System.out.print(ex.ch); public void change(String str,char ch) str=tes

7、t ok; ch0=gA.good and abcB.good and gbcC.test ok and abcD.test ok and gbcOOP局部-简答题1.抽象类和接口的区别2.静态变量和实例变量的区别?3.String s = new String(xyz创立了几个String Object ?4字符串连接时为什么推荐使用StringBuffer而不是直接用String+String的方式,请简述原因?5.final, finally, finalize的区别。6.线程继承Thread类如果某个类继承了Thread类,那么此时这个类就是一个线程类,如果要创立此类的线程对象 A e

8、xtends Thread A a = new A(); a.start()实现Runnable接口如果某个类实现了Runnable接口,此时这个类不是线程类,这个类中只有将线程要执行的任务写好了如果此时用用线程来执行这个任务A implements RunnableA a = new A();/创立一个线程对象指向该任务Thread th = new Thread(Runnable r,name);th.start()生命周期:5种状态新建,就绪,运行,阻塞,死亡多线程并发问题:脏数据:污染了数据 -前提条件:多个线程访问同一个对象如何防止脏数据的产生:线程同步 - synchronized

9、可以用来修饰方法,代码块:本质是给对象加锁如果修饰方法:给调用方法的对象(this)加锁如果修饰代码块: sychronized(要加锁的对象) 一般情况下,加锁的对象都为this线程间的通信 - 线程间要交流生产者消费者Object类下的几个方法来实现了线程间的通信wait() :一定出现在sychronized的方法中notify() notifyAll()线程池:Excutors.newFixedThreadPool(int nThread) - ExcutorServiceexecute()ThreadLocal:将数据绑定到当前线程上,那么在整个线程过程中都可以使用该数据IO流: R

10、andomAccessFile:随机访问流(任意访问流)特殊之处:1.这个流既可以读文件,也可以写文件2.可以定位到文件的任意位置,而且可以获取当前的偏移量RandomAccessFile(File dest,String mode)read() write() - 按照字节seek(long pos)getFilePointer() - long数据库局部-选择题1.当在执行过程中,如果QUANTITY的值是空的话,哪个语句将显示一个0?A.SELECT id_number,100/quantity FROM inventory;B.SELECT id_number,NVL(100/quan

11、tity,0) FROM inventory;C.SELECT id_number,NULL(100/quantity,0) FROM inventory;D.SELECT idnumber,TOCHAR(100/quantity,0) FROM inventory;2.分析下面SQL语句,在什么情况下引起这个语句失败?STUDEN表构造:ID NUMBER(9) FIRSTNAME VARCHAR2(25) LASTNAME VARCHAR2(25)SELECT * FROM student WHERE id=(SELECT id FROM student WHERE UPPER(first

12、_name)=KATE AND UPPER(last_name)=HENRYA.在数据表中没有学生的名字是Kate HenryB.数据表中学生的名字叫Kate的多于一个C.数据表中的学生的名字叫Kate Henry的多于一个D.FIRSTNAME和LASTNAME的值在数据库中是小写的3.分析下面的SQL语句,这个语句为什么会出现一个错误?CREATE TABLE sale_items(id_number NUMBER(9),description VARCHAR(25) AS SELECT id_number,description FROM inventory WHERE quantity

13、500;A.一个子句丧失B.一个关键字丧失C.where子句不能应用在创立表上D.数据类型在新表中不需要被定义4.在SQL语言中,关于主键描述正确的选项是多项选择A 只能包含一列B 可以包含两列C 可以包含一列或者多列D 以上都不正确数据库简答题1.写SQL语句显示员工表中工资超过平均工资的员工。2.假设订单表orders用来存储订单信息,cid代表客户编号,money代表单次订购额,现要查询每个客户的订购次数和每个客户的订购总金额?统计单笔消费超过50元的用户总共的消费次数以及消费总金额,总金额20003. 表PERSONNEL 的构造如下:ID NUMBER(9)NAME VARCHAR2

14、(25)MANAGER_ID NUMBER(9)在这里, 部门的管理者也看作是雇员,写出SQL语句查询每个雇员的以及管理者的4.ORACLE数据库有哪几种约束类型?5.请分别写出mysql与oracle的分页查询语句查询第3-第7条数据6.写一个查询,来查询出挣到佣金(m)的雇员ename,部门名称,和部门所处的位置loc。有employ表和dept表7.写一个查询,查出在名字里面有一个A的所有雇员ename和其所在的部门loc的名称。8显示所有薪金高于各自部门平均薪金的人?9.查询平均成绩大于60分的同学的学号和平均成绩;Servlet局部1.JSP九大置对象,Servlet域对象以及各自的

15、作用围2.说出Servlet的生命周期?5.请简述mvc架构。同时说明在自己熟悉的架构中mvc分别对应什么?框架局部1.请描述一下spring MVC工作原理。2.Spring的核心是什么?JAVA根本局部-选择题1.D2.B解析:此题考察java的浮点运算的精度问题,浮点数是以二进制得形式存储得,如0.5 = 2得-1次方选项A 返回结果0.99999选项B 返回结果3.75选项C 返回结果0.0 因为30和300都是整数,只要把任何一个定义成浮点型数据,数据会更准确选项D 返回结果0.5 原理同选项C3.AC固定算法,只是用while循环或for循环4.Dswitch分支构造如果在case

16、的语句体中添加break;语句,那么只要找到对应的case 的常量,就执行对应case常量后的语句,如果没有break语句就继续执行后面所有case 后的语句如果最后有default也会执行。5.BJava中的位运算符: int类型占4个字节,一个字节占8位,所以一个int数字占用32位。 表示右移,如果该数为正,那么高位补0,假设为负数,那么高位补1;表示无符号右移,也叫逻辑右移,即假设该数为正,那么高位补0,而假设该数为负数,那么右移后高位同样补0。6.BD根据题意,方法名称不变,参数的个数可变,解决方案是用可变参数类型.类型名称比方:int. args 可变参数其本质是一个数组,且必须放

17、在方法参数的最后一个位置,可以承受零个或多个参数,在方法中使用数组方式来访问,比方:args0 args1.简答:1.int ary = 1,2,1,4,5,6; int counts = new int10; for(int i:ary) countsi+; for(int j:counts) System.out.print(j+ 2.答案:1冒泡排序的根本思想冒泡排序是交换排序中一种简单的排序方法。它的根本思想是对所有相邻记录的关键字值进展比效,如果是逆顺ajaj+1,那么将其交换,最终到达有序化。其处理过程为:1将整个待排序的记录序列划分成有序区和无序区,初始状态有序区为空,无序区包括

18、所有待排序的记录。2对无序区从前向后依次将相邻记录的关键字进展比拟,假设逆序将其交换,从而使得关键字值小的记录向上飘浮左移,关键字值大的记录好似石块,向下“堕落右移。每经过一趟冒泡排序,都使无序区中关键字值最大的记录进入有序区,对于由n个记录组成的记录序列,最多经过n-1趟冒泡排序,就可以将这n个记录重新按关键字顺序排列。 2原始的冒泡排序算法对由n个记录组成的记录序列,最多经过n-1趟冒泡排序,就可以使记录序列成为有序序列,第一趟定位第n个记录,此时有序区只有一个记录;第二趟定位第n-1个记录,此时有序区有两个记录;以此类推,算法框架为: fori=n;i1;i- 定位第i个记录;假设定位第

19、i个记录,需要从前向后对无序区中的相邻记录进展关键字的比拟,它可以用如下所示的语句实现。下面给出完整的冒泡排序算法: for(int i=0;iarr.length-1;i+)/外层循环控制排序趟数 for(int j=0;jarrj+1) int temp=arrj; arrj=arrj+1; arrj+1=temp; 3.答案:int ary = 1,0,1,1,0,0,1,1,1,0,0,1,0,1; int index = 0;ary.length;i+) if(aryi=0) aryi = 1; aryindex+ = 0; System.out.print(i+OOP局部-选择题1

20、.A3.B7.B数组和对象在作为数的参数传递的时候,是引用传递,如果在方法中对其做过修改,那么真的会影响原始数据在语法定义上的区别:静态变量前要加static 关键字,而实例变量前那么不加。在程序运行时的区别:实例变量属于某个对象的属性,必须创立了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创立任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创立对象后才可以通过这个对象来使用,静态变量那么可以直接使用类名来引用。只要是new,都是重新分配堆空间,如果不区分栈

21、和堆,这里创立了1个String Object。如果是从jvm角度来说的话,它是创立了两个对象,String s是在栈里创立了一个变量,new String()是在堆里创立了一个对象并被s引用到。如果是String s = ,那就要看常量池里有没有,如果有直接引用,如果没有那么创立再引用这里本身就是pool中的一个对象,而在运行时执行new String()时,将pool中的对象复制一份放到heap中,并且把heap中的这个对象的引用交给s持有。ok,这条语句就创立了2个String对象。难度等级:中4.答案:每次String+String都会生成一个新的String,而使用StringBuf

22、fer那么不会出现此种情况,可以减少String对象的实例化次数。5.1final为关键字;可以修饰类,方法,变量2finalize()为方法;由JVM进展调用,用于对对象进展垃圾回收3finally:用于标识代码块,与try进展配合,不管try中的代码执行完或没有执行完这里指有异常,该代码块之中的程序必定会进展;通常用于释放资源 A demoGC = new A();demoGC = null;System.gc();System.out.println(gc was runed public class A Overrideprotected void finalize() throws

23、Throwable Demo finalized System.out.println(Thread.currentThread().getName(); super.finalize();1.Cnvl(expr1,expr2)将null转换为非null值如果expr1位null,那么取值expr2,expr2是实际值 expr1和expr2可以是任何数据类型,但两个参数的数据类型必须是一致的3.D通过现有的表生成一个新的物理表create table 表名 as select 子句 where 字句不成立的条件4.C1.SELECT * from staff where salary(SEL

24、ECT AVG(salary) from staff)SELECT dept_id from staff UNION All SELECT id from department MAX()MIN(expr)COUNT(DISTINCT expr,expr.)SUM(expr)UNION 求去重后的并集UNION All 求全并集minus 差集2. 统计单笔消费超过50元的用户总共的消费次数以及消费总金额,总金额select cid,COUNT(*),SUM(money) from orders where money50 GROUP BY cid HAVING SUM(money)3. SE

25、LECT s1.name,s2.name as mgrName from staff s1 LEFT JOIN staff s2 ON s1.mgr_id=s2.id4.答案:五种:1.主键约束 PRIMARY KEY2.外键约束 FOREIGN KEY3.唯一约束 UNIQUE4.检查约束 CHECK5.非空约束 NOT NULL5.答案:mysql分页查询: select * from staff LIMIT 0,2oracle的分页语句:3是起始记录号,6是终止记录号select * from ( select e.*, rownum rn from emp e ) emp_alias where emp_alias.rn=3 and emp_alias.rntmp.av and s.dept_id=tmp.did1、request对象2、response对象3、session对象4、application对象5、out 对象6、pageContext 对象7、config 对象8、page

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

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