软件开发工程师JAVA笔试题文档格式.docx
《软件开发工程师JAVA笔试题文档格式.docx》由会员分享,可在线阅读,更多相关《软件开发工程师JAVA笔试题文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
9、下列说法错误的有()
A.数组是一种对象
B.数组属于一种原生类
C.intnumber=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
1、不能用来修饰interface的有()
A.privateB.publicC.protectedD.static
11、关于Float,下列说法正确的是
A.Float是一个类
B.Float在java.lang包中
C.Floata=1.是正确的赋值方法
D.Floata=newFloat(1.)是正确的赋值方法
12、下列哪种说法是正确的()
A.实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法
C.实例方法可直接调用其他类的实例方法
D.实例方法可直接调用本类的类方法
13、下列说法错误的有()
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
14、下面说法哪些是正确的?
A.Applet可以访问本地文件
B.对static方法的调用不需要类实例
C.socket类在java.lang中
D.127...1地址代表本机
15、类Test1、Test2定义如下:
publicclassTest1{
publicfloataMethod(floata,floatb)throws
IOException{}
}
publicclassTest2extendsTest1{
//Line6
将以下()方法插入行6是不合法的。
floataMethod(floata,floatb){}
publicintaMethod(inta,intb)throwsException{}
publicfloataMethod(floatP,floatq){}
publicintaMethod(inta,intb)throwsIOException{}
16、关于以下程序段,正确的说法是:
1.Strings1=abc+def
2.Strings2=newString(s1);
3.if(s1.equals(s2))
4.System.out.println(.equals()succeeded);
5.if(s1==s2)
6.System.out.println(==succeeded);
A.行4与行6都将执行B.行4执行,行6不执行
C.行6执行,行4不执行D.行4、行6都不执行
17、下面程序的执行结果为:
publicclassTest{
staticBooleanfoo(charc){
System.out.println(c);
returntrue;
publicstaticvoidmain(String[]args){
inti=;
for(foo(A);
foo(B)(ifoo(C)){
i++;
foo(D);
A.ABDCBDCBB.ABCDABCD
C.CompilationfailsC.Anexceptionisthrownatruntime
18、阅读下面的程序
publicclassOuter{
publicvoidsomeOuterMethod(){
//Line3
publicclassInner(){}
Outero=newOuter();
//Line8
WhichinstantiatesisaninstanceofInner?
()
A.newInner();
//Atline3B.newInner();
//Atline8
C.newo.Inner();
//Atline8C.newOuter.inner();
19、选出能正确赋值的:
publicclassTestA{
privateinta;
publicintchange(intm){
returnm;
publicclassTestBextendTestA{
publicintb;
publicstaticvoidmain(){
TestAaa=newTestA();
TestBbb=newTestB();
intk;
//Line13
在Line13处可以正确赋值的有:
k=m;
B.k=b;
C.k=aa.a;
D.k=bb.change(3);
E.k=bb.a
2、已知如下代码:
switch(m)
{
case:
System.out.println(Condition);
case1:
System.out.println(Condition1);
case2:
System.out.println(Condition2);
case3:
System.out.println(Condition3);
break;
default:
System.out.println(OtherCondition);
当m的值为什么时输出Condition2?
()
A.B.1C.2D.3E.4F.None
21、给出程序段
publicclassParent
publicintaddValue(inta,intb)
ints;
s=a+b;
returns;
classChildextendsParent{}
可以加在Child类的方法有:
A.intaddValue(inta,intb){}
B.publicvoidaddValue(inta,intb){}
C.publicintaddValue(inta){}
D.publicintaddValue(inta,intb){}
22、下述哪些说法是正确的?
A.实例变量是类的成员变量
B.实例变量是用static关键字声明的
C.方法变量在方法执行时创建
D.方法变量在使用之前必须初始化
23、对于下列代码:
publicclassSample{
longlength;
publicSample(longl){length=l;
publicstaticvoidmain(Stringarg[]){
Samples1,s2,s3;
s1=newSample(21L);
s2=newSample(21L);
s3=s2;
longm=21L;
下列哪些表达式返回值为true?
A.s1==s2;
B.s2==s3;
C.m==s1;
D.s1.equals(m)
24、哪个类可用于处理Unicode?
A.InputStreamReaderB.BufferedReaderC.WriterD.PipedInputStream
25、已知如下说明:
TextAreata=newTextArea(Hello,5,5);
请问哪个语句是正确的?
()
A.Themaximumnumberofcharactersinalineis5.
B.Thedisplayedheightis5linesotherwiseconstrain.
C.Thedisplayedstringcanusemultiplefonts.
D.Thedisplayedstringsareeditable.
26、当Frame改变大小时,放在其中的按钮大小不变,则使用如下哪个layout?
A.FlowLayout
B.CardLayout
C.NorthandSouthofBorderLayout
D.EastandWestofBorderLayout
E.GridLayout
27、已知如下的命令执行javaMyTestabc
A.args[]=MyTestabc
B.args[]=MyTest
C.args[]=a
D.args[1]=b
28、下面哪个语句是创建数组的正确语句?
A.floatf[][]=newfloat[6][6];
B.float[]f[]=newfloat[6][6];
C.floatf[][]=newfloat[][6];
D.float[][]f=newfloat[6][6];
E.float[][]f=newfloat[6][];
29、下面叙述那些是正确的?
A:
java中的集合类(如Vector)可以用来存储任何类型的对象,且大小可以自动调整。
但需要事先知道所存储对象的类型,才能正常使用。
B:
在java中,我们可以用违例(Exception)来抛出一些并非错误的消息,但这样比直接从函数返回一个结果要更大的系统开销。
C:
java接口包含函数声明和变量声明。
D:
java中,子类不可以访问父类的私有成员和受保护的成员。
3、以下关于数据库范式的描述,哪些是错误的()
A.如果把多个数据项用一个大的String表示为一个字段,则不满足第一范式
B.满足数据库范式使得数据库的效率更高
C.如果满足更高的范式,则必须首先满足低级别的范式
D.数据库第二范式要求把表中与所有键没有直接关系的数据全部拆分到其他表中
31、在Hibernate中,元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取什么值?
A.noneB.saveC.deleteD.save-update
32、以下程序代码对Customer的name属性修改了两次:
tx=session.beginTransaction();
Customercustomer=(Customer)session.load(Customer.class,newLong
(1));
customer.setName(Jack);
customer.setName(Mike);
mit();
执行以上程序,Hibernate需要向数据库提交几条update语句?
A.B.1C.2D.3
33、假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现什么情况?
Sessionsession=sessionFactory.openSession();
Customercustomer=(Customer)session.get(Customer.class,newLong
(1));
session.close();
IteratororderIterator=customer.getOrders().iterator();
A.编译出错B.编译通过,并正常运行C.编译通过,但运行时抛出异常
34、设栈最大长度为3,入栈序列为1,2,3,4,5,6,则不可能得出栈序列是()
A.1,2,3,4,5,6
B.2,1,3,4,5,6
C.3,4,2,1,5,6
D.4,3,2,1,5,6
35、在UML方法中,使用多种类型的图形来帮助进行设计,请问一下那些图形不是UML的图形类型()
A.类图B.实体关系图C.序列图D.活动图
二、问答题
1、阅读下面的代码
interfacePlayable{
voidplay();
interfaceBounceable{
interfaceRollableextendsPlayable,Bounceable{
Ballball=newBall(PingPang);
classBallimplementsRollable{
privateStringname;
publicStringgetName(){
returnname;
publicBall(Stringname){
this.name=name;
publicvoidplay(){
ball=newBall(Football);
System.out.println(ball.getName());
上面代码是否有错,如果有错,错误在何处?
2、详细解释下面的语句:
Class.class.getClass()
3、解释一下什么是MVC,IOC,AOP,ORM,JNDI,,Hibernate,SSO、Portal?
4、什么是EJB?
EJB和JAVABEAN有何区别?
5、现有Mysql数据库,写Spring+Hibernate的配置文件
数据IP:
127...1
数据库:
bdtc
用户名:
root
密码:
mysql
6、请简要描述一下J2EE应用中的classloader的层次结构?
7、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
但是要保证汉字不被截半个,如我ABC4,应该截为我AB,输入我ABC汉DEF,应该输出为我ABC而不是我ABC+汉的半个。
8、XML的解析技术有哪些?
区别是什么?
你在项目中用到了xml技术的哪些方面?
如何实现的?
9、写一段代码,实现银行转帐功能:
接口定义如下:
PublicinterfaceITransfer{
/**
*银行内部转帐,从转出帐号中扣除转帐金额,给转入帐号增加转帐金额,需要保证以上两个操作
*要么同时成功,要么同时失败
*fromAccountId转出帐号
*outAccountId转入帐号
*amount转帐金额
**/
PublicvoidtransferInner(StringfromAccountId,StringoutAccountId,
BigDecimalamount);
*外部转帐-转出,从转出帐号中扣除转帐金额
PublicvoidtransferOut(StringfromAccountId,BigDecimalamount);
*外部转帐-转入,给转入帐号增加转帐金额
*toAccountId转入帐号
PublicvoidtranserIn(StringtoAccountId,BigDecimalamount);
请编写你的实现类,来实现上述接口
Account表
字段:
accountId,主键varchar2(32),用户帐号
amount,金额number(18,3)
1、SQL问答题
表结构:
1、表名:
g_cardapply
字段(字段名/类型/长度):
g_applynovarchar8:
//申请单号(关键字)
g_applydatebigint8:
//申请日期
g_statevarchar2:
//申请状态
2、表名:
g_cardapplydetail
g_namevarchar3:
//申请人姓名
g_idcardvarchar18:
//申请人身份证号
其中,两个表的关联字为申请单号
题目:
1、查询身份证号码为61131981222382的申请日期
2、查询同一个身份证号码有两条以上记录的身份证号码及记录个数
3、将身份证号码为61131981222382的记录在两个表中的申请状态均改为7
4、删除g_cardapplydetail表中所有姓李的记录
1、selectg_applydatefromg_cardapplya,g_cardapplydetailbwherea.g_applyno=b.g_applynoandb.g_idcard=61131981222382
2、selectg_idcard,count(g_applyno)fromg_cardapplydetailgroupbyg_idcardhavingcount(g_applyno)2
3、updateg_cardapplya,g_cardapplydetailbseta.g_state=7,b.g_state=7wherea.g_applyno=b.applynoandb.g_idcard=61131981222382
4、deletefromg_cardapplydetailwhereg_namelike李%