Java面精彩试题(带问题详解)

Java面精彩试题(带问题详解)
Java面精彩试题(带问题详解)

世杰Java工程师面试题

选择题:

单选题

1,以下java程序代码,执行后的结果是( )

java.util.HashMap map=newjava.util.HashMap();

map.put("name",null);

map.put("name","Jack");

System.out.println(map.size());

A: 0 B: null C: 1 D: 2

答案:C

2,执行以下程序后的输出结果是( )

Public class Test {

Public static void main(String[] args) {

StringBuffer a = new StringBuffer("A");

StringBuffer b = new StringBuffer("B");

operator(a, b);

System.out.println(a +","+ b);

}

Public static void operator(StringBuffer x, StringBuffer y) { x.append(y); y = x;

}

}

A: A,A B: A,B C: B,B D: AB,B

答案:D

3,关于依赖注入,下列选项中说法错误的是( )

A:依赖注入能够独立开发各组件,然后根据组件间关系进行组装

B:依赖注入使组件之间相互依赖,相互制约

C:依赖注入提供使用接口编程

D:依赖注入指对象在使用时动态注入

答案:B

4,关于spring说法错误的是( )

A: spring是一个轻量级JAVA EE的框架集合

B: spring是“依赖注入”模式的实现

C: 使用spring可以实现声明事务

D: spring提供了AOP方式的日志系统

答案:D

5,要在session对象中保存属性,可以使用以下哪个语句( ) A: session.getAttribute(“key”,”value”)

B: session.setAttribute(“key”,”value”)

C: session.setAttribute(“key”)

D: session.getAttribute(“key”)

答案:B

6,关于以下程序代码的说明正确的是?( )

Public class HasStatic{

Private static int x = 100;

Public static void main(String args[]){

HasStatic hs1= new HasStatic();

hs1.x++;

HasStatic hs2= new HasStatic();

hs2.x++;

hs1=new HasStatic();

hs1.x++;

HasStatic.x--;

System.out.println("x="+x);

}

}

A: 程序通过编译,输出结果为:x=103

B: 10行不能通过编译,因为x是私有静态变量

C: 5行不能通过编译,因为引用了私有静态变量

D: 程序通过编译,输出结果为:x=102

答案:D

7,以下哪一项不是使用mvc模式设计的web应用程序所具有的优点( ) A:可维护行强

B:可扩展性强

C:代码重复少

D:大大减少代码量

答案:D

8,在 myjsp.jsp 中,关于下面的代码说法错误的是: ( )

<% page language="java" import="java.util.*" errorPage="error.jsp" isErrorPage="false" %>

A: 该页面可以使用 exception 对象

B: 该页面发生异常会转向 error.jsp

C: 存在 errorPage 属性时,isErrorPage 是默认为 false

D: error.jsp 页面一定要有isErrorPage 属性且值为 true

答案:A

9,关于Spring MVC的核心控制器DispatcherServlet的作用,以下说法错误的是()A:它负责接收HTTP请求

B:加载配置文件

C:实现业务操作

D:初始化上下应用对象ApplicationContext

答案:C

10,下面的类图表示的是哪个设计模式?( )

A:代理模式(Proxy)

B:装饰模式(Decorator)

C:桥接模式(Bridge)

D:观察者模式(Observer)

答案:D

11,java如何接受request域中的参数? ( )

A: request.getRequestURL()

B: request. getAttribute()

C: request.getParameter()

D: request.getWriter()

答案:C

12,对下面Spring声明式事务的配置含义的说明错误的是( )

"org.springframework.transaction.interceptor.TransactionProxyFact oryBean">

PROPAGATION_REQUIRED,readOnly

PROPAGATION_REQUIRED

A:定义了声明式事务的配置模板

B: 对get方法采用只读事务

C: 缺少sessionFactory属性的注入

D: 配置需要事务管理的bean的代理时,通过parent引用这个配置模板,代码如下:

答案:C

13,下面的输出结果是什么?( )

Public class Demo {

Public static void main(String args[]){

String str = new String("hello");

if(str=="hello"){

System.out.println("true");

}else{

System.out.println("false");

}

}

}

A: true

B: false

C:编译不通过

D:执行报错

答案:B

14,下面属于java合法变量定义的是?( )

A: final

B:1var1

C: _var2

D: var3&

答案:C

15,下面有关JSP置对象的描述,说法错误的是?( )

A: session对象:session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止

B: request对象:客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应

C: application对象:application对象实现了用户间数据的共享,可存放全局变量,可以有多个

D: response对象:response对象包含了响应客户请求的有关信息

答案:C

16,Please choice the output result ( )

public class Test

{

Public static void changeStr(String str)

{

str ="welcome";

}

Public static void main(String[] args)

{

String str ="1234";

changeStr(str);

System.out.println(str);

}

}

A: 1234

B: welcome

C: 空

D: 不确定

答案:A

17,for(i=0;i<10;++i,sum+=i);i的最终结果是?( ) A: 10

B: 9

C: 11

D: 以上答案都不正确

答案:A

18,对于下面这段代码,以下说确的是:( )

Public class Test

{

Public int x;

Public static void main(String args[]

{

System. out. println("Value is"+ x);

}

}

A: 程序会打出 "Value is 0"

B: 程序会抛出 NullPointerException

C: 非静态变量不能够被静态方法引用

D: 编译器会抛出 "possible reference before assignment"的错误

答案:C

19,HashMap和HashTable的描述,错误的是? ( )

A: 他们都实现了Map接口。

B: HashMap非线程安全,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap就必须为之提供额外同步。

C: HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。

D: 通过contains方法可以判断一个对象是否存在于HashMap或者Hashtable中。

答案:D

20,在Web应用程序的文件与目录结构中,web.xml是放置在( )中。

A: WEB-INF目录

B: conf目录

C: lib目录

D: classes目录

答案:A

多选题

21,下面有关java的instanceof、?、&、&&说确的有?( )

A: instanceof :用来判断某个实例变量是否属于某种类的类型。

B: ?:三目运算符

C: &:位运算:按位与

D: &&:逻辑运算:逻辑与

答案:A B C D

22,下面哪些属于java的基本数据类型? ( )

A: byte

B: string

C: boolean

D :void

答案:A C

23,判断下列数据类型转换的正确选项( )

A: int i=0;object o1=i;object o2=(object)i;

B: int i=0;object o=i;int i1=o;int i2=(object)o;int i3=(int)o;

C: int i=0; long l1=i;long l2=( long)i;

D: int i=0; object o1=i;long l1=( int)o1;long l2=(long)o1;

答案:A C

24,在Java中,关于HashMap类的描述,以下正确的是 ( ) A: HashMap使用键/值得形式保存数据

B: HashMap 能够保证其中元素的顺序

C: HashMap允许将null用作键

D: HashMap允许将null用作值

E: HashMap 的长度为length

答案:A C D

25,下列关于JavaBean的说法错误的是( )

A: Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写B: 在JSP文件中引用Bean,其实就是用语句

C: 被引用的Bean文件的文件名后缀为.java

D: Bean文件放在任何目录下都可以被引用

答案:B C D

简答题:

Java 简答题

1.以下语句是否能正确执行?

abstract class Name

{

private String name;

public abstract boolean isStupidName(String name) {} }

答案: 错。abstract method必须以分号结尾,且不带花括号。

2.以下语句是否能正确执行?

public class Something

{

void doSomething ()

{

private String s = "";

int l = s.length();

}

}

答案: 错。局部变量前不能放置任何访问修饰符 (private,public,和protected)。final可以用来修饰局部变量

3.以下语句是否能正确,如果正确输出是什么?

class Something

{

int i;

public void doSomething()

{

System.out.println("i = " + i);

}

}

答案: 正确。输出的是"i = 0"。int i属於instant variable (实例变量,或叫成员变量)。instant variable有default value。int的default value是0。

4:如何将String类型转化成Number类型?请用代码说明答案:Integer类的valueOf方法可以将String转成Number。下面是代码示例:?

1 2 String numString = “1000”;

intid=Integer.valueOf(numString).intValue();

5,如何交换两个变量的值?请用代码说明

答案:先把两个值相加赋值给第一个变量,然后用得到的结果减去第二个变量,赋值给第二个变量。再用第一个变量减去第二个变量,同时赋值给第一个变量。代码如下:

inta=5,b=10;a=a+b; b=a-b; a=a-b;

SQL简答题:

Student(S#,Sname,Sage,Ssex) 学生表

S#:学号;Sname:学生;Sage:学生年龄;Ssex:学生性别

Course(C#,Cname,T#) 课程表

C#,课程编号;Cname:课程名字;T#:教师编号

SC(S#,C#,score) 成绩表

S#:学号;C#,课程编号;score:成绩

Teacher(T#,Tname) 教师表

T#:教师编号; Tname:教师名字

问题1、查询”001”课程比”002”课程成绩高的所有学生的学号;

答案: select a.S# from (select s#,score from SC where C#='001') a,(select s#,score

from SC where C#='002') b

where a.score>b.score and a.s#=b.s#;

问题2、查询平均成绩大于60分的同学的学号和平均成绩;

答案: select S#,avg(score)

from sc

group by S# having avg(score) >60;

问题3、查询所有同学的学号、、选课数、总成绩;

答案: select Student.S#,Student.Sname,count(SC.C#),sum(score)

from Student left Outer join SC on Student.S#=SC.S#

group by Student.S#,Sname

问题4、查询所有课程成绩小于60分的同学的学号、;

答案: select S#,Sname

from Student

where S# not in (select Student.S# from Student,SC where S.S#=SC.S# and score>60);

问题5、删除“002”同学的“001”课程的成绩 ;

答案: delete from Sc where S#='002'and C#='001';

JS简答题:

1:实现函数,输出九九乘法表。

参考答案:

window.onload = function(){

for(i=1;i<=9;i++){

for(j=1;j<=i;j++){

document.write(i+"x"+j+"="+i*j +" ");

}

document.write("
")

}

};

2,编写一个方法去掉一个数组的重复元素

例子数组:var arr=["abc",85,"abc",8,8,1,2,5,85,4,7,8];

参考答案:

相关主题
相关文档
最新文档