java软件工程师面试题附答案-(东方国信)_第1页
java软件工程师面试题附答案-(东方国信)_第2页
java软件工程师面试题附答案-(东方国信)_第3页
java软件工程师面试题附答案-(东方国信)_第4页
java软件工程师面试题附答案-(东方国信)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java软件工程师面试题东方国信1.1【问题】简述对Vector类的理解,并写出常用到的对向量的增、删、插、定位及获取长度的方法。 增:public Boolean add( Object o);Public void add (int index,Object element)删:public Object remove(int index)Public Boolean remove(Object o)插: public Object set(int index,Object element)定位:public int indexOf(Object elem)Public Object ge

2、t(int index)长度:public int size()1.2 【问题】请给出下面一段程序的执行结果:public class Basevoid Iam(Base b)System.out.pirntln(“Base;Overload);void Iam(Child c)System.out.println(“Child;Overload);public static void main(String args)Base test = new Base new Base(),new Child();For(int i=0;i<test.length;I+)Testi.Ia

3、m(new Child();class Child extends Basevoid Iam(Base b)System.out.println(“Base;Override);void Iam(Child c)System.out.println(“Child;Override); System.out.println(“Child;Overload);System.out.println(“Child;Override);1.3【问题】Jsp的两种跳转方式分别是什么?有什么区别?【答】1. forword:在当前连接中引入要转向的页面!2 Response.sendRedirect :断开

4、当前页面连接,重新翻开新的页面! 1.4【问题】请找出下面一段程序出现的问题,并给出合理的解决方案或者修改程序前面的数字表示行号 1 OutputStreamWriter out = 2 java.sql.Connection conn = 3 try 4 Statement stat = conn.createStatement();5 ResultSet rs = stat.executeQuery(6 “select uid, name from user);7 while (rs.next()8 9 out.println(“ID: + rs.getString(“uid)10 “,姓

5、名: + rs.getString(“name);11 12 conn.close();13 out.close();14 15 catch(Exception ex)16 17 ex.printStackTrace();18 对象rs和stat应在后面关闭!while语句 一般不写在TRY中!这样会降低执行的效率! 改为:1 OutputStreamWriter out = 2 java.sql.Connection conn = 3 try 4 Statement stat = conn.createStatement();5 ResultSet rs = stat.executeQuer

6、y(6 “select uid, name from user);7 catch(Exception ex)8 9 ex.printStackTrace();10 11 while (rs.next()12 13 out.println(“ID: + rs.getString(“uid)14 “,姓名: + rs.getString(“name);15 16try17 rs.close()18 stat.close()19 conn.close();20 out.close();21 22 catch(Exception ex)23 24 ex.printStackTrace();25 1.5

7、【问题】请完成一个java类,要求:将ResultSet 转换为Vector,并实现类似ResultSet的GetString(int FieldIndex) 、Next()方法。1.6【问题】如何防止Form的重复提交?可以用文字描述获取提交的信息,以获取的信息为条件查找数据库,返回结果集,如果结果集不为空,说明已经提交过了1.7根底题多项选择题(在每题的五个备选答案中选出正确答案,并将正确答案的序号填入题干后面的括号 static 访法中只能调用static 变量D、将private int m 改为 int m2、下面哪几个函数是public void example()的重载函数?A、

8、 public void example( int m)B、public int example()C、public void example2()D、 public int example ( int m, float f)重载是型的方法了怎样都行 就是名相同即可3、给出下面的代码段:public class Baseint w, x, y ,z;public Base(int a,int b)x=a; y=b;public Base(int a, int b, int c, int d)/ assignment x=a, y=bw=d;z=c;在代码说明/ assignment x=a,

9、y=b处写入如下哪几个代码是正确的?A、 Base(a,b);B、x=a, y=b;C、x=a; y=b;D、this(a,b); /构造方法中怎么能调构造方法呢4、如下定义:String s = story;下面哪个表达式是合法的?A、 s += books;B、char c = s1;C、int len = s.length;D、String t = s.toLowerCase(); /“story是String的对象不可用下表取值,它有cd两种方法5、Java中main()函数的值是什么?A、 StringB、intC、charD、void main /函数是可以重载的6、如下哪些字串是

10、Java中的标识符?A、 fieldnameB、superC、3numberD、#numberE、$number /以字母或下划线或美元符号开头7、如下哪些是Java中有效的关键字?A、 constB、NULLC、falseD、thisE、 native / false true null 都是保存字8、如下哪些是Java中正确的整数表示?A、22B、0×22C、022D、22H9、下面的代码段中,执行之后i 和j 的值是什么?int i = 1;int j;j = i+;A、 1, 1B、1, 2C、2, 1D、2, 210、下面句话是正确的?A、 >>

11、 是算术右移操作符.B、>> 是逻辑右移操作符.C、>>> 是算术右移操作符D、>>> 是逻辑右移操作符11、下面哪个赋值语句是合法的?A、float a = 2.0B、double b = 2.0C、int c = 2D、long d = 212、下面哪个是main()函数的合法参数?A、char argsB、char argsC、String argD、String args13、下面哪个语句是创立数组的正确语句?A、 float f = new float66;B、float

12、f = new float66;C、float f = new float6;D、float f = new float66;E、float f = new float6;14、表达式int m = 0, 1, 2, 3, 4, 5, 6 ; 下面哪个表达式的值与数组下标量总数相等?A、 m.length()B、m.lengthC、m.length()+1D、m.length+115、如下的命令执行 java MyTest a b c 请问哪个语句是正确的?A、 args0 = MyTest a b cB、args0 = MyTestC、args0 = aD、args1= b 16、如下代码:

13、public class Testlong a = new long10;public static void main ( String arg ) System.out.println ( a6 );请问哪个语句是正确的?A、Output is null.B、Output is 0.C、When compile, some error will occur.D、When running, some error will occur.17、如下代码:boolean m = true;if ( m = false )System.out.println(“False);elseSystem.o

14、ut.println(“True);执行结果是什么?A、FalseB、TrueC、NoneD、An error will occur when running.18、如下代码:public class Testpublic static void main(String arg) int i = 5;do System.out.println(i); while (i>5)System.out.println(“finished); 执行后的输出是什么?A、 5B、4C、6D、FinishedE、None19、下面代码执行后的输出是什么?outer: for(int i=0;i&

15、amp;lt;3; i+)inner: for(int j=0;j<2;j+)if(j=1) continue outer;System.out.println(j+ and +i);A、 0 and 0B、0 and 1C、0 and 2D、1 and 0E、1 and 1F、1 and 2G、2 and 0H、 2 and 1I、 2 and 220、如下代码:switch (m)case 0: System.out.println(“Condition 0); case 1: System.out.println(“Condition 1); case 2: System.

16、out.println(“Condition 2);case 3: System.out.println(“Condition 3);break; default: System.out.println(“Other Condition); 当m 的值为什么时输出Condition 2?A、 0B、1C、2D、3E、4F、None 东方国信JAVA程序员面试题笔试题通用编程知识问卷 东方国信1.1编程风格问卷【问题】有一些变量,请你命名:请说明你的命名原那么。一、Class :第一个字母大写;如果是复合的单词,每个单词的第一个字母大写! 二、Static Final :变量的名字全部都大写,并

17、且指出完整含义三、Class 变量 :如果是一个单词,全部小写;如果是复合单词,从第二个单词开始,每个单词的第一个字母大写! 1.2 翻译将下面的文字翻译为中文:Exceptions are generated by the Java runtime system in response to errors that are detectedwhen classes are loaded and their methods are executed. The runtime system is said to throw these runtime exceptions. Runtime ex

18、ceptions are objects of the class java.lang.RuntimeException or of its subclasses.异常的产生是发生在JAVA运行时,当类被载入并且它们的方法被调用,系统响应错误。运行时异常提示抛出这些错误,运行时异常是java.lang.RuntimeException类的对象或其子类对象。 2.数据库 2.1【问题】 有以下两张表: USERLIST表: CHARGE表: 请用最少的SQL语句,产生下述查询结果:其中:数据是经过USERLIST、CHARGE表进行适宜的连接后以ACCOUNT为关键字分组求和得到。【特别注意】:

19、 号码4210004 在USERLIST表中有一条记录,但是在CHARGE表中并没有记录。但结果中合同号CCCC具有一条记录。请写出SQL语句。Select account,count(account) as users,sum(rent) as rent,sum (nvl(fee01,0) as fee01,sum(nvl(fee02,0) as feel02,sum (nvl(fee03,0) as fee03,sum(nvl(fee04,0) as feel04from userlist a,charge b wherea.telephone=b.telephone(+) group b

20、y account; 2.2 【问题】 表A:表B:的记录参加到A表,请写出最优化的SQL;2.3【问题】在实际应用中,我们经常遇到需要转换数据的显示方式,比方将横表转为纵表,或将纵表转为横表的情况请运用SQL实现一下数据转换:(转换前)select * from testgrade_id subject_name max_score1 语文 982 数学 952 政治 875 语文 975 数学 1005 政治 92(转换后)年级 语文 数学 政治一年级 98 0 0二年级 0 95 87五年级 97 100 92 select grade_id ,sum(decode(subject_na

21、me,语文, max_score,0) as 语文,sum(decode(subject_name,数学, max_score,0) as 数学,Sum(decode(subject_name,政治,max_score,0) as 政治from text group by grade_id;2.4【问题】 A、B表数据量都在400万左右,现在想用B表的数据更新A表的用户姓名,并把B表中A表没在进行数据逻辑集合比拟的时候,ORACEL提高了方便的操作供我们选用。包括UNION , INTERSECT , MINUS 请分别指出这几个操作的含义。Union :求两个查询的合集!Intersect:

22、 求两个查询的交集,即两个查询结果的公共局部!Minus:求两个查询的差集,即,从第一个查询中去掉第二个查询的结果,为最后的返回结果! 如果TEST1 ,TEST2 两个表都只有一个字段A NUMBER,且其中有重复数据SELECT A FROM TEST1UNIONSELECT A FROM TEST2和SELECT A FROM TEST1UNION ALLSELECT A FROM TEST2结果一样么?请对你的结论说明原因。第一种用法会删除重复的资料。第二种用法不会删除重复的资料。2.5 【问题】数据库为我们提高了定时调用存储过程和脚本的机制,该功能通过DBMS_JOB来实现的 请写出

23、调用该过程的语句。我们可以通过查看数据库中的那个试图来监控队列任务的根本情况?DBA_JOBS, USER_JOBS 2.6 【问题】请阅读一下代码,procedure testasbegincreate table test_pp (a number);insert into test_pp values(1);commit;end;如有错误之处请修改,并说明修改原因。如果没有不必作答。没有2.7【问题】请简单说明一下建立分区表的意义。(分区表的好处)为了改善大型表的可伸缩性和可管理性create table guestbook(id number(16) primary key,usern

24、ame varchar2(64),sex varchar2(2),email varchar2(256),expression varchar2(128),content varchar2(4000),time date,ip varchar2(64)partition by range(time)(partition g_2000q4 values less than(2001-01-01)<0 tablespace users, partition g_2001q1 values lsee than(2001-04-01)<0 tablespace users,

25、 partition g_2001q2 values less than(2001-07-01)<0 tablespace users, )以time字段分区,标准分区名: g_2000q4 范围:<2001-01-01 (日期)分区名: g_2001q1 范围:>2001-01-01 <2001-04-01分区名: g_2001q2 范围:>2001-04-01 <2001-07-01请修改上述代码,将guestbook建成一个分区表。2.8 【问题】现在我们需要对A 表和 B 表进行连接操作,需要关联A ,

26、B 表的USER_NO字段和ACCT_MONTH字段SELECT A.USER_NO,A.ACCTMOTNH,COUNT(*) FROM TEST1 A,TEST2 BWHERE A.USER_NO=B.USER_NO AND A.ACCT_MONTH=B.ACCT_MONTH为了提高该SQL的效率需要在B表上建立索引,请问应该怎么建立。写出相应的SQL。 如果B表上在USER_NO上已经建立了索引,下面的查询会用到该索引么?SELECT * FROM TEST2 BWHERE TO_NUMBER(USER_NO)=222313;Create index B_index on B (user_

27、no,acct_month);用不到 因为有函数 TO_NUMBER3. Oracle问卷Oracle程序员应答,其他跳过3.1 【问题】解释一下sum的作用答:求符合条件的记录某数值字段的和3.2 【问题】Table1有两个字段,field1 varchar2(10)和field2 number。请写出向这两个表中插入test和100的sql语句。答:insert into Table1 (field1,field2) values(test,100);请写出一个sql语句,将Table1中的field1字段的值更新成test111:答:update Table1 set field1=te

28、st111; 此为将Table1表中所有记录field1字段的值改为test111update Table1 set field1=test111 where field2=100; 此为将Table1表中field2字段等于100的记录的field1字段的值改为test111请写出一个sql语句,将Table1中的数据全部选出来:答: select field1,field2 from Table1;3.3 【问题】Delete和truncate的区别是什么?答: Delete删除的记录如不提交可以恢复,此命令不能删除回滚段中的数据truncate删除的记录不能恢复,并可删除回滚段中的数据3

29、.4 【问题】请解释一下varchar2和char的区别答: char 最大可以容纳2000个字节varchar2最大可以容纳4000个字节,此为可变长字段3.5 【问题】解释一下group by的作用答: 此关键字的作用是将查询出的符合条件的记录集按某字段列表分组,在此过程中预查出的字段假设为字符型,分组后只取最上面的一个,预为数值型将求和3.6 【问题】Order by有什么作用答: 此关键字的作用是将查询出符合条件的记录集按某字段列表进行排序,默认为升序(Asc),降序为: Desc3.7 【问题】Union和union all有什么区别答:3.8 【问题】Months_between的

30、用法是什么答: 是在一个月份的范围内3.9 【问题】Oracle体系结构类:分区表有什么作用?答:可以将表中不同的字段或不同的记录存入不同的表空间,并且这些表空间可在不同的物理磁盘,一般用于将比拟大的字段如图片或文件类字段存入比拟大的磁盘中.请解释一下oracle表空间答: 表空间是一个逻辑概念,但属于表空间的数据文件是存在于磁盘上的物理文件用户的数据存在于表中而表就存在于表空间中,一个表空间可以有多个属于自己的数据文件,但一个数据文件只能属于一个表空间Oracle中表空间和数据文件有什么关系答: 一个表空间可以有多个属于自己的数据文件,但一个数据文件只能属于一个表空间 请简单描述一下Orac

31、le的体系结构答: 主要有两大局部1. 数据库实例,包括:系统全局区(SGA),和后台进程(数据写入进程,重做日志进程,检查点进程,用户监控进程等),实例在启动时首先到初始化参数文件中找到控制文件,再从控制文件中找到日志文件和数据文件2. 数据库文件,包括:数据文件(.dbf)日志文件(.log)控制文件(.ctl)其中数据文件又分 系统数据文件 用户数据文件 临时数据文件和回滚数据文件日志文件可以有多组,一组写满换另一组,在切换时有检查点进程保证数据的完整性控制文件是二进制文件,最大可以为64MPctfree和pctused分别指的是什么?通用编程知识问卷所有编程人员必做 1.1 SQL问卷

32、【问题】有以下两张表:USERLIST表:TELEPHONE(Varchar(10),主键) ACCOUNT(varchar(10) RENT(numeric(10,2)4210001 AAAA 19.504210002 AAAA 20.504210003 BBBB 100.004210004 CCCC 250.00CHARGE表:TELEPHONE(Varchar(10),主键) FEE01(numeric(10,2) FEE02(numeric(10,2) FEE03(numeric(10,2) FEE04(numeric(10,2)4210001 11.00 12.00 13.00 14

33、.004210002 21.00 22.00 23.00 24.004210003 31.00 32.00 33.00 34.00请用最少的SQL语句,产生下述查询结果:ACCOUNT(Varchar(10),主键) USERS(int) RENT(numeric(10,2) FEE01(numeric(10,2) FEE02(numeric(10,2) FEE03(numeric(10,2) FEE04(numeric(10,2)AAAA 2 40.00 32.00 34.00 36.00 38.00BBBB 1 100.00 31.00 32.00 33.00 34.00CCCC 1 25

34、0.00 0.00 0.00 0.00 0.00其中:数据是经过USERLIST、CHARGE表进行适宜的连接后以ACCOUNT为关键字分组求和得到。【特别注意】 号码4210004 在USERLIST表中有一条记录,但是在CHARGE表中并没有记录。但结果中合同号CCCC具有一条记录。请写出SQL语句。SELECT A.ACCOUNT,SUM(ACCOUNT) AS USERS,A.RENT,B.FEE01,B.FEE02,B.FEE03,B.FEE04 FROM USERLIST A,CHARGE BWHERE B.TELEPHONE= (+)A.TELEPHONE ORDER BY AC

35、COUNT GROUP BY ACCOUNT1.2 翻译将下面的文字翻译为中文:Java provides superior support for runtime error and exception handling, allowing programs to check for anomalous conditions and respond to them with minimal impact onthe normal flow of program execution. This allows error- and exception-handling code to be ad

36、ded easily to existing methods.答: Java超级程序员对运行错误和异常的捕获的句柄,并允许程序在正常执行条件下检查他们,你可以在已经存在的方法中很简单的来添加错误和异常句柄2. Java问卷Java程序员应答,其他跳过2.1 【问题】1) 简述对Vector类的理解,并写出常用到的对向量的增、删、插、定位及获取长度的方法。 答:增-add、差-insert 定位-find2) 作用域public,protected,private,以及不写时的区别答:public是所有都可以访问、protected同一包内可以访问、private是本类中可以访问、不写默认为pr

37、otected3) ArrayList和Vector的区别,HashMap和Hashtable的区别答:ArrarList存储的可以是对象的列表而Vector存储的是key value的形式2.2 【问题】请给出下面一段程序的执行结果:public class Basevoid Iam(Base b)System.out.pirntln(“Base;Overload);void Iam(Child c)System.out.println(“Child;Overload);public static void main(String args)Base test = new Base new

38、Base(),new Child();For(int i=0;i<TEST.LENGTH;I+)Testi.Iam(new Child();class Child extends Basevoid Iam(Base b)System.out.println(“Base;Override);void Iam(Child c)System.out.println(“Child;Override);结果:Child;OverloadChild;Override2.3 【问题】Jsp的两种跳转方式分别是什么?有什么区别?答:1.forward 将同一请求发送到下一页面2.redirect 一个全新的请求到下一页面2.4 【问题】请找出下面一段程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论