2023年java面试题大全_第1页
2023年java面试题大全_第2页
2023年java面试题大全_第3页
2023年java面试题大全_第4页
2023年java面试题大全_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

公司笔试面试题分析本套题目重要出自神州数码,华为,笔试考试题以及SCJP认证考题一,选择题下列数组初始化对的的是:CAint[5]a={1,2,3,4,5};Bint[2][2]a={{1,2},{3,4}};Cint[][]a={{2,3,4,5},newint[3]};Dint[][]a=newint[][5];下面的程序名为Student.java:BpublicclassStudent{privateStringname;publicStudent(Strings_name)//1{name=s_name; ﻩﻩ//2}publicstaticvoidmain(Stringargs[]){Students=newStudent();//3}}使用如下指令编译:javacStudent.java将会得到什么结果?A.ﻩ将会顺利通过编译,并将产生一个Student.class的类文献。B. 编译时在//3处犯错。C.ﻩ编译时在//2处犯错。D. 编译时在//1处犯错。关于下述程序:CpublicclassDivide{publicstaticvoidmain(Stringargs[]){System.out.println(""17.0/0=""+17.0/0);//1System.out.println(""17/0=""+17/0);//2}}描述对的的是?A. 编译犯错B.ﻩ编译通过,运营时//1、//2处均出现异常C. 编译通过,运营时//1处得到一个无穷大值,//2处将出现异常D. 编译通过,运营时//1处出现异常,//2处将得到一个无穷大值有下面程序:BpublicclassTestString{ﻩpublicstaticvoidmain(String[]args){ﻩStringstr1=“abcd”;ﻩStringstr2=“abcd”; Stringstr3=newString(“abcd”); Stringstr4=newString(“abcd”);ﻩSystem.out.println(str1==str2);ﻩSystem.out.println(str3==str4);}}输出结果是?AtruetrueBtruefalseCfalsetrueDfalsefalse关于下面的类描述中对的的是:CclassTest{voidtest(inti){System.out.println(""Iamanint."");}voidtest(Strings){System.out.println(""Iamastring."");}publicstaticvoidmain(Stringargs[]){Testt=newTest();charch='y';t.test(ch);}}A.编译犯错B.编译通过,运营犯错C.编译通过,运营时输出“Iamanint”D.编译通过,运营时输出“Iamastring”如希望父类中的某成员变量能被任何包中的子类直接访问,那么定义该变量时使用限定词____最适合。CA.public ﻩBprivate CprotectedﻩD.default当编译和运营下列程序段时,会发生什么?CclassBase{}classSubextendsBase{}classSub2extendsBase{}publicclassCEx{publicstaticvoidmain(Stringargv[]){Baseb=newBase();Subs=(Sub)b;}}A通过编译和并正常运营。ﻩ B编译时出现错误。C编译通过,运营时出现异常。 D以上都错下面对的的是:AA在Java中类只允许单一继承B在Java中一个类只允许实现一个接口C在Java中类不能同时继承一个类和实现一个接口D在Java中一个接口只能继承一个接口下面哪些是java语言中的关键字?BAsizeofBabstractCNULLDNative下面语句哪个是对的的?DAcharc='ab';Bintl=0xfffL;Cfloatf=0.23;Ddoubled=0.7E-3;classExSuper{Stringname;Stringnick_name;publicExSuper(Strings,Stringt){name=s;nick_name=t;}publicStringtoString(){returnname;}}publicclassExampleextendsExSuper{publicExample(Strings,Stringt){super(s,t);}publicStringtoString(){returnname+""a.k.a""+nick_name;}publicstaticvoidmain(Stringargs[]){ExSupera=newExSuper(""First"",""1st"");ExSuperb=newExample(""Second"",""2nd"");System.out.println(""ais""+a.toString());System.out.println(""bis""+b.toString());}}运营结果是CA编译时会出现例外。B运营结果为:aisFirstbissecondC运营结果为:aisFirstbisSeconga.k.a2ndD运营结果为:aisFirsta.k.a1ndbisSeconda.k.a2ndabstractclassMineBase{abstractvoidamethod();staticinti;}publicclassMineextendsMineBase{publicstaticvoidmain(Stringargv[]){int[]ar=newint[5];for(i=0;i<ar.length;i++)System.out.println(ar[i]);}}程序编译运营结果是CA打印5个0。B编译犯错,数组ar[]必须初始化。C编译犯错,Mine应声明为abstract。D出现IndexOutOfBoundes的例外。publicclassFoo{publicstaticvoidmain(String[]args){try{return;}finally{System.out.println(""Finally"");}}}结果是:BA程序正常运营,但不输出任何结果。B程序正常运营,并输出""Finally""。C编译能通过,但运营时会出现一个例外。D由于没有catch语句块,所以不能通过编译。哪个表达式结果为true?DIntegeri=newInteger(42);Longh=newLong(42);Doubled=newDouble(42.0);Doubledd=newDouble(42);Ai==h;Bd==dd;Ci.equals(h);Dd.equals(dd);package语句对的的是AA必须在程序开头B不一定在程序开头C可以在import之后D包名可以以数字开头有关类Demo,哪句描述是对的的?ApublicclassDemoextendsBase{privateintcount;publicDemo(){System.out.println(""ADemoobjecthasbeencreated"");}protectedvoidaddOne(){count++;}}A当创建一个Demo类的实例对象时,count的值为0。B当创建一个Demo类的实例对象时,count的值是不拟定的。C超类对象中可以包含改变count值的方法。DDemo的子类对象可以访问count。java中,关于char类型错误的是CA占2字节B可以存储一个英文字母C不能存储一个汉字D其相应的封装类是Character关于接口跟抽象类对的的是CA接口可以创建对象B抽象类可以创建对象C接口中不能定义变量,都是常量D接口中可以有private方法关于内部类错误的是:AA静态内部类可以访问其外部类的非静态属性B非静态内部类可以访问其外部类的静态属性C内部类可以是protectedD内部类可以是final的异常解决对的的是:BA调用任何也许抛出异常方法,都必须捕获trycatch或者throwsBRuntimeException可以不捕获或者throwsCthrow跟throws用法是同样的Dtry必须有catch,可以没有finallyVector与ArrayList对的的是:CAArrayList出现比Vector早BArrayList速度比Vector慢CArrayList没有同步保护,Vector具有同步保护DArrayListVector两者都是无序的集合"下面在Java线程同步中已经不推荐使用,应当避免使用的方法是:DAjoinBnotifyCwaitDsuspendWhichofthefollowinglinesofcodewillcompilewithouterror?BA.inti=0;if(i){System.out.println(“Hi”);}B.booleanb=true;booleanb2=true;if(b=b2){System.out.println(“Sotrue”);}C.inti=1;intj=2;if(i==1!j==2)System.out.println(“OK”);D.inti=1;intj=2;if(i==1&|j==2)System.out.println(“OK”);"下列哪些组件可认为其设立布局管理器DAJDialogBJFrameCJWindowDJPanel下列程序CclassA{ publicstaticvoidmain(String[]args)ﻩ{ Bb=newB();ﻩ b.run(); ﻩfor(inti=0;i<30;i++) ﻩ{ﻩﻩﻩSystem.out.println(""good"");ﻩﻩ} }}classBextendsThread{ﻩpublicvoidrun()ﻩ{ﻩ for(inti=0;i<30;i++) {ﻩﻩ System.out.println(""hello"");ﻩ } }};A编译错误B编译对的,执行时goodhello交替输出C编译对的,执行时先输出30个hello再输出30个goodD编译对的,程序运营时出现异常关于线程错误的是DA多线程共享同一数据也许出现错误,所以读写数据都需要加同步保护B线程在suspend时,不会释放同步锁,因此也许导致死锁,不推荐使用C线程在wait时,可以释放同步锁,因此线程通信时推荐使用。D线程在sleep时,可以释放同步锁。FileInputStream和FileOutputStream错误的是CA是字节流B是节点流C用其拷贝文献时,不能拷贝中文D可以拷贝任何文本文献和2进制文献。下列错误的是CAString类对象具有不可改变的特性,对象内容无法改变BStringBuffer类内容可以改变C用String类比StringBuffer来做字符串运算比较节约内存DString类对象每次连接都创建一个新的对象一个类中那些内容可以在序列化时写入文献或发送到网络上DAtransient修饰的属性B静态属性C方法D类名关于Collection接口错误的是:DACollection下面分为两个接口Set跟List接口BSet接口的实现类是无序无反复集合例如HashSetCList接口的实现类是有序可以反复集合例如ArrayList与VectorDMap接口也是Collection的子接口,实现类有HashMap和HashtableWhathappenswhenyoutrytocompileandrunthefollowingapplication?Chooseallcorrectoptions.A1.publicclassZ{2.publicstaticvoidmain(String[]args){3.newZ();4.}5.6.Z(){7.Zalias1=this;8.Zalias2=this;9.synchronized(alias1){10.try{11.alias2.wait();12.System.out.println(“DONEWAITING”);13.}14.catch(InterruptedExceptione){15.System.out.println(“INTERRUPTED”);16.}17.catch(Exceptione){18.System.out.println(“OTHEREXCEPTION”);19.}20.finally{21.System.out.println(“FINALLY”);22.}23.}24.System.out.println(“ALLDONE”);25.}26.}A.Theapplicationcompilesbutdoesn’tprintanything.B.Theapplicationcompilesandprint“DONEWAITING”C.Theapplicationcompilesandprint“FINALLY”D.Theapplicationcompilesandprint“ALLDONE”E.Theapplicationcompilesandprint“INTERRUPTED”一个Javaapplet的init()方法如下所示,关于该applet运营时显示的图形用户界面下述的论述是对的的Dpublicvoidinit(){setLayout(newBorderLayout());add(""East"",newButton(""hello""));}选项:a)在applet中什么也未显示b)在applet窗口正中央显示一个按钮c)在applet窗口的左侧显示一个按钮d)在applet窗口的右侧显示一个按钮e)一个按钮填充整个applet区域下列关于关系数据库的说法对的的是:A贮存在列下的数据不必具有相同数据类型。B行是唯一的(没有完全相同的行)。C列有顺序。D行有顺序。以下不属于DML数据操纵语句的是:DAinsertBupdateCdeleteDcommit以下sql语句对的的是:DAselectstudentid,depart,count(*)fromstudentgroupbydepart;Bselectstudentid,count(*)fromstudent;Cselectdepart,max(avg(age))fromstudentgroupbydepart;Dselectstudentid,avg(score),max(score)fromscoregroupbystudentid在oracle中提交之前,下面说法错误的是:DA当前的用户可以看到DML操作的结果B其他用户不能看到DML操作的结果C被操作的数据被锁住,其他用户不能修改这些数据D所有的savepoints被去掉在JSP中使用<jsp:getProperty>标记时,不会出现的属性是:CA.nameﻩﻩﻩB.propertyC.value ﻩD.以上皆不会出现JSP内嵌对象session的类型为javax.servlet.http.HttpSession,下述语句会使该对象失效的是:CAsession.dispose();ﻩ ﻩBsession.clear();Csession.invalidate(); ﻩDsession.removeAll();对于JavaBean的属性,下面哪种说法是不对的的:DAJavaBean中不一定要有属性BJavaBean类可以不是public的C要访问和修改JavaBean的属性,应当通过get/set方法D假如一个属性只提供了get方法,那么它是只读的在JSP中调用JavaBean时不会用到的标记是:AA<javabean>ﻩB<jsp:useBean> C<jsp:setProperty> D<jsp:getProperty>Page指令用于定义JSP文献中的全局属性,下列关于该指令用法的描述不对的的是:DA<%@page%>作用于整个JSP页面。B可以在一个页面中使用多个<%@page%>指令。C为增强程序的可读性,建议将<%@page%>指令放在JSP文献的开头,但不是必须的。D<%@page%>指令中的所有属性只能出现一次。<jsp:useBean>标签中scope的范围由小到大是DApagesessionrequestapplicationBapplicationpagerequestsessionCapplicationsessionrequestpageDpagerequestsessionapplication要让不同用户共享一个JavaBean的对象则该对象的范围应当设立为:CAsessionBpageCapplicationDrequest关于<jsp:include>与<%@include%>的区别下面错误的是:BA用<jsp:include>被包含的页面和本页面将分别生成两个servletB用<@include>被包含的页面和本页面将分别生成两个servletC<jsp:include>可以包含jsp和html文献D<@include>可以包含jsp和html文献以下那种请求表白客户端只想接受到响应的头信息,并决定了接受文挡的大小,修改时间。DAPUTBGETCTRACEDHEAD下面为部署文献中的Servlet影射代码片段,对的的是:CA<servlet-mapping><servlet>ABC</servlet><url-pattern>/ABC</url-pattern></servlet-mapping>B<servlet-name><servlet-mapping>ABC</servlet-mapping><url-pattern>/ABC</url-pattern></servlet-name>C<servlet-mapping><servlet-name>ABC</servlet-name><url-pattern>/ABC/*</url-pattern></servlet-mapping>DNoneofthese.关于自定义标签的使用不对的的是:BA必须在JSP页面中使用<@taglib>B必须通过web.xml映射C必须存在tld文献D自定义标签的类必须是public的response.sendRedirect()跳转与<jsp:forward>跳转错误的是DAsendRedirect()地址栏中显示跳转后的地址Bforward跳转地址栏中显示跳转前的地址Cforward的时候可以用<jsp:param>传递参数DsendRedirect()不能跳转到servletEsendRedirect()事实上是两次请求下列,那几句话会导致空指针异常(NullPointerException)CStrings=null;1.if((s!=null)&(s.length()>0))2.if((s!=null)&&(s.length()>0))3.if((s==null)|(s.length()==0))4.if((s==null)||(s.length()==0))A1B2C1和3D2和4publicclassFoo{publicstaticvoidmain(String[]args){StringBuffera=newStringBuffer(""A"");StringBufferb=newStringBuffer(""B"");operate(a,b);System.out.println(a+“,”+b);)staticvoidoperate(StringBufferx,StringBuffery){x.append(y);y=x;}}编译运营以上程序,结果是那种?DA.Thecodecompilesandprints“A,B”.B.Thecodecompilesandprints“A,A”.C.Thecodecompilesandprints“B,B”.D.Thecodecompilesandprints“AB,B”.E.Thecodecompilesandprints“AB,AB”.F.Thecodedoesnotcompilebecause“+”cannotbeoverloadedforStringBuffer.struts框架中,关于FormBean,下列说法对的的是:AAFormBean是一种数据bean,重要用来封装表单提交上来的数据,并把这些数据传递给ActionB在FormBean中可以对页面上传递来的参数进行一下格式上的验证,这种验证是一种客户端的验证C用户每次提交表单,都会产生一个新的FormBean实例D动态FormBean不能进行验证操作struts框架中,在一个Action的配置信息中,name属性指的是:CA当前action实例的名字B当前action所在的类的名字C该Action中调用的FormBean的实例的名字D该Action中调用的FormBean的类的所在包名struts框架,那些说法对的?BAStruts中无法完毕上传功能BStruts框架基于MVC模式CStruts框架容易引起流程复杂、结构不清楚等问题DStruts可以有效地减少项目的类文献数目关于struts项目中的类与MVC模式的相应关系,说法错误的是?DAJsp文献实现视图View的功能BActionServlet这一个类是整个struts项目的控制器CActionForm、Action都属于Model部分D一个struts项目只能有一个ServletLinux系统root密码忘掉,用什么办法可以最方便的修改密码?CA用其他用户登陆,破解/etc/password文献B将硬盘挂载到其他linux系统上进行恢复C进入单用户模式进行修改D清除lilo或者grubJ2ME中关于Configuration(配置)错误的是:DA配置规范里重要规定了运营J2ME程序的最低规定BCLDC是连接有限设备配置CCDC是连接设备配置DCLDC规定的类库与CDC同样,只是最低规定不同关于MIDP对的的是:DA所有的J2ME程序都必然会使用MIDPBMIDP也是一种Configuration(配置)CMIDP是全称是MIDletProgrammingDMIDP是建立在CLDC上的一种ProfileMIDP2.0中不属于高级API的类是:DAAlertBGaugeCFormDCanvas关于XML和HTML语言的错误的是:BAHTML语言不具有扩展性,XML语言具有很好的扩展性BHTML侧重结构话的描述内容,XML侧重表现信息的形式CHTML内容与显示为一体,XML则内容与显示相分离DHTML语言出现比XML语言早关于DTD和Schema错误的是:CADTD规定了XML文献中可以出现的标记和标记的结构及顺序等BDTD可以在XML文献内部或外部C公开使用的公用DTD定义时,在DOCTYPE中使用关键字SYSTEMDDTD不符合XML语法,而Schema符合XML的语法关于DOM和SAX错误的是CA运用DOM解析xml时,整个文档驻留内存,文档很大时需要大量内存BSAX速度快,但编程比较难,仅可以串行解析xmlCSAX的速度不如DOM快DSAX分析器缺少灵活性。使用EJB的好处错误的是:DAEJB的结构决定编写分布式程序无须关注事务,安全,多线程问题,可以提高效率BEJB开发人员与和底层中间件相隔离,便于开发和分别改善CEJB服务器端仅编写一次,即可随处运营DEJB可以从结构上保证了一台服务器崩溃时其他服务器可以正常运营关于RMI错误的是DARMI中不能直接对对象实现实行远程调用,只能对对象的接口操作BRMI底层通过存根stub和框架skeleton实现CRMI中方法调用参数传递为值传递,传递参数必须可以序列化DRMI的服务器与客户机中内存地址完全互相映射,保证两边同步关于无状态会话Bean错误的是:DA不保存和客户的状态信息B涉及主接口,远程接口,Bean类和部署描述文献C部署时,EJB容器会为这个Bean分派几个实例到组件池中,并由组件池动态管理组件数量D生命状态有四种,存在,不存在,钝化,激活关于有状态会话Bean错误的是:CA在客户端程序引用期间维护Bean中所有实例数据的状态值B多个客户不会同时共享同一个有状态SessionBean实例C钝化过程就是容器调用ejbremove删除多余EJB实例的过程D有状态会话Bean的生命状态涉及不存在,准备好和钝化关于有状态和无状态会话Bean错误的是:DA有状态会话Bean实例和客户端是一对一关系B有状态会话Bean需要的系统资源相对更多C有状态会话Bean执行速度相对更慢D无状态会话Bean生命周期更加复杂关于实体Bean错误的是BA可以分为容器管理持久性(CMP)和Bean管理持久性(BMP)BCMP中变量和数据库中的字段相应关系由Bean类中的代码表达CCMP中可以不用编写对数据库操作的代码,比较简朴DBMP中必须有开发者编写数据库操作代码实体Bean中基本的数据库操作相应中的方法中错误的是:CA插入相应ejbCreate(),ejbPostCreate()B读取ejbLoad()C修改ejbUpdate()D删除ejbRemove()关于BMP和CMP比较错误的是:DABMP和CMP的声明周期管理机制是相同的,不同的是BMP的事务持久性管理机制交给Bean的开发者BCMP编程方便但是减少了Bean的开发能力CBMP比CMP灵活,常用来映射复杂的数据视图或者很难用CMP实现的复杂逻辑解决D在客户端的调用BMP和CMP的方法是不相同的关于JMS错误的是:CA消息解决机制提供了异步的非阻塞的消息传递机制,方便实现松耦合B消息传送分为点对点和出版订阅方式C无论是点对点还是出版订阅方式,发送和接受者运营的时间没有关联D点对点只有一个接受者,而出版订阅方式可以有很多接受者面向对象语言的三个特性ABDA封装B继承C抽象D多态构造一个ArrayList类的实例,哪个方法对的:BAArayListList=newObject();BListmyList=newArrayList();CArrayListmyList=newList();DListmyList=newList();指出下列程序的运营结果:BpublicclassExample{ﻩStringstr=newString(“good”); char[]char={‘a’,’b’,’c’}; publicstaticvoidmain(String[]args){ﻩExampleex=newExample();ﻩex.change(ex.str,ex.ch); System.out.print(ex.str=”and”);ﻩSystem.out.print(ex.ch);}publicvoidchange(Stringstr,charch[]){str=“testok”;ch[0]=‘g’;}}AgoodandabcBgoodandgbcCtestokandabcDtestokandgbc给定下面代码片断ADpublicvoidTest(){ try{method();System.out.println(“HelloWorld”);}catch(ArrayIndexOutOfBoundsExceptione){System.out.println(“Exception1”);}finally{System.out.prinlnt(”Thankyou!”);}假如method正常运营返回,会显示下面的哪些信息?AHelloWorldBExceptionCException1DThankyou!给出下面代码段CDswitch(m){case0:System.out.println(“case0”);case1:System.out.println(“case1”);break;case2:default:System.out.println(“default”);}下面哪些值将引起“default”的输出A0B1C2D3下列代码哪一行会犯错?Cpublicvoidmodify(){inti,j,k;i=100;while(i>0){j=i*2;System.out.println(“Threvalueofjis”+j);k=k+1;i--;}}Aline4Bline6Cline7Dline8关于session论述对的的有:BCA一个session可以相应数个用户B一个session只能相应一个用户C可以手动关闭一个sessionDsession假如不手动关闭,会一直存在Server中下列哪个标记在html中生成超级链接B:A<hrefname=””>B<ahref=””></a>C<p></p>D<form></form>哪个关键字可以对对象加互斥锁?BAtransientBsynchronizedCserializeDstatic下列哪些选项属于JSP内置对象?ABCDEArequestBresponseCsessionDoutEconfigFcontext已知表T1中有2行数据,T2中有3行数据,执行SQL语句D“selecta.*fromT1a,T2b”后,返回的行数为A2B3C5D6已知表T1和T2的字段定义完全相同,T1,T2中各有5条不同的数据,其中T1有2条数据存在于表T2中,语句”select*fromT1unionselect*fromT2”,返回的行数为:AA8B10C3D12已知表T1具有字段ID,CourseID和Score,且数据为BIDCourseIDScore3190218522903280则语句”selectid,sum(score)fromT1groupbyID”执行结果为AIDsum(score)31702175BIDsum(score)21753170CIDsum(score)21703175DIDsum(score)31752170电话号码表t_phonebook中具有100万条数据,其中号码字段phoneno上创建了唯一索引,且电话号码所有由数字组成,要记录号码头为321的电话号码的数量,下面写法执行速度最慢的是CAselectcount(*)fromt_phonebookwherephoneno>=’321’andphoneno<’321A’Bselectcount(*)fromt_phonebookwherephonenolike‘321%’Cselectcount(*)fromt_phonebookwheresubstr(phone,1,3)=’321’已知表tbl中字段land_ID建有索引,字段cust_id建有唯一索引,下列语句查询逻辑相同,其中执行效率最优的是BAselect*fromtblwhereland_id>750or(cust_id=180orcust_id=560)Bselect*fromtblwhere(cust_id=180orcust_id=560)orland_id>750Cselect*fromtblwhereland_id>750unionselect*fromtblwherecust_id=180unionselect*fromtblwherecust_id=560Dselect*fromtblwhereland_id>750union(select*fromtblwherecust_id=180unionallselect*fromtblwherecust_id=560)员工表staff表结构如下,staff和skill字段建有唯一约束Dstaffvarchar2(10),skillvarchar2(10)哪条语句可以查询同时拥有技能A和技能B的员工Aselectstafffromstaffskillwhereskill=‘A’orskill=‘B’Bselectstafffromstaffskillwhereskill=’A’andskill=’B’Cselectstafffromstaffskillwhereskill=’A’orskill=’B’groupbystaffDselectstafffromstaffskillwhereskill=’A’orskill=’B’groupbystaffhavingcount(*)>1员工表staff结构如下Cstaffnovarchar2(10)emailvarchar2(50)哪一个SQL语句查询出没有Email地址的员工号AselectstaffnofromstaffwhereEmail=nullBselectstaffnofromstaffwhereEmail<>nullCselectstaffnofromstaffwhereEmailisnullDselectstaffnofromstaffwhereEmailisnotnulloracle数据库启动环节顺序为A1mount2open3nomountA3-1-2B2-3-1C2-1-3D3-2-1存在两个结构相同的数据库表T1(col1,col2,col3)、T2(col1,col2,col3),写出一SQL语句将所有T1数据导入到T2表DAselectcol1,col2,col3fromT1intoT2(col1,col2,col3)BinsertT1(col1,col,col3)intoT2(col1,col2,col3)CinsertintoT2(col1,col2,col3)asselectcol1,col2,col3fromT1DinsertintoT2(col1,col2,col3)selectcol1,col2,col3fromT1;一个表的字段为varchar2,假如建表时没有指定长度,则默认长度为FA1B25C38D255E4000F建表时varchar2类型字段必须指定长度用truncate和delete语句删除表中数据的区别AAtruncate命令不记录日记Btruncate命令记录日记Cdelete命令不记录日记如下查询语句selectid_number,100/quantityfrominventory假如quantity为空,则查询语句的第二个字段将返回BAaspaceBanullvalueCavalueof0Davalueof100Ethekeyworknull如下语句:selecti.id_number,m.id_numberfrominventoryi,manufacturermwherei.manufacturer_id=m.id_numberorderbyinventory.description执行是错误的,请问以下措施哪个可以改正这个错误?AA在orderby字句中使用表的别名Bwhere字句中去掉表的别名Cwhere字句中用表名代替表的别名Dorderby字句中去掉表名,只要字段名称即可A表字段a类型int中有100条记录,值分别为1至100,如下语句selectafromAwhereabetween1and50or(ain(25,70,95)andabetween25and75)则如下哪个值在这个sql语句返回的结果集中AA30B51C75D95变量v_time=’23-MAY-00’,如下那条语句返回值为’01-JAN-00’?BAselectround(v_time,’DAY’)fromdualBselectround(v_time,’YEAR’)fromdualCselectround(v_time,’MONTH’)fromdualDAselectround(to_char(v_time,’yyyy’))fromdual关于索引(index)哪些说法是错误的?AA创建索引能提高数据插入的性能B索引应当根据具体检索需求来创建,在选择性好的列上创建索引C索引并非越多越好指出下面sql语句错误之处Dselectid_number“PartNumber”,sum(price)“price”frominventorywhereprice>50groupby“PartNumber”orderby2;Aorderby2BfrominventoryCwhereprice>50Dgroupby“PartNumber”如下语句Aifv_num>5thenv_example:=1;elsifv_num>10thenv_example:=2;elsifv_num<20thenv_example:=3;elsifv_num<39thenv_example:=4;elsev_example:=5;假如v_num=37,则v_example的值为A1B2C3D4E5如下语句:Bbeginforiin1..8loopifi=2thennull;elseifi=5thenrollback;elseifi=8thencommit;elseinsertintotexamplevalues(i);endif;endif;endif;endloop;commit;end;执行该语句后将有几条记录插入到表texample表中A1B2C3D4设计一表结构,某字段规定存放员工编号,为固定10位长字符,采用哪种类型字段:AAcharBlongCvarcharDvarray二,简答题谈谈final,finally,finalize的区别。final—修饰符(关键字)假如一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载finally—再异常解决时提供finally块来执行任何清除操作。假如抛出一个异常,那么相匹配的catch子句就会执行,然后控制就会进入finally块(假如有的话)。finalize—方法名。Java技术允许使用finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在拟定这个对象没有被引用时对这个对象调用的。它是在Object类中定义的,因此所有的类都继承了它。子类覆盖finalize()方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?匿名的内部类是没有名字的内部类。不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现。StaticNestedClass和InnerClass的不同,说得越多越好(面试题有的很笼统)。NestedClass(一般是C++的说法),InnerClass(一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(InnerClass)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象&和&&的区别。&是位运算符。&&是布尔逻辑运算符,&&运算速度高(短路与)。HashMap和Hashtable的区别。都属于Map接口的类,实现了将惟一键映射到特定的值上。HashMap类没有分类或者排序。它允许一个null键和多个null值。Hashtable类似于HashMap,但是不允许null键和null值。它也比HashMap慢,由于它是同步的。Collection和Collections的区别。Collections是个java.util下的类,它包具有各种有关集合操作的静态方法。Collection是个java.util下的接口,它是各种集合结构的父接口。什么时候用assert。断言是一个包含布尔表达式的语句,在执行这个语句时假定该表达式为true。假如表达式计算为false,那么系统会报告一个AssertionError。它用于调试目的:assert(a>0);//throwsanAssertionErrorifa<=0断言可以有两种形式:assertExpression1;assertExpression1:Expression2;Expression1应当总是产生一个布尔值。Expression2可以是得出一个值的任意表达式。这个值用于生成显示更多调试信息的String消息。断言在默认情况下是禁用的。要在编译时启用断言,需要使用source1.4标记:javac-source1.4Test.java要在运营时启用断言,可使用-enableassertions或者-ea标记。要在运营时选择禁用断言,可使用-da或者-disableassertions标记。要系统类中启用断言,可使用-esa或者-dsa标记。还可以在包的基础上启用或者禁用断言。可以在预计正常情况下不会到达的任何位置上放置断言。断言可以用于验证传递给私有方法的参数。但是,断言不应当用于验证传递给公有方法的参数,由于不管是否启用了断言,公有方法都必须检查其参数。但是,既可以在公有方法中,也可以在非公有方法中运用断言测试后置条件。此外,断言不应当以任何方式改变程序的状态。GC是什么?为什么要有GC?(基础)。GC是垃圾收集器。Java程序员不用紧张内存管理,由于垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:System.gc()Runtime.getRuntime().gc()Strings=newString("xyz");创建了几个StringObject?两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。Math.round(11.5)等於多少?Math.round(-11.5)等於多少?Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?shorts1=1;s1=s1+1;有错,s1是short型,s1+1是int型,不能显式转化为short型。可修改为s1=(short)(s1+1)。shorts1=1;s1+=1对的。sleep()和wait()有什么区别?搞线程的最爱sleep()方法是使线程停止一段时间的方法。在sleep时间间隔期满后,线程不一定立即恢复执行。这是由于在那个时刻,其它线程也许正在运营并且没有被调度为放弃执行,除非(a)“醒来”的线程具有更高的优先级(b)正在运营的线程由于其它因素而阻塞。wait()是线程交互时,假如线程对一个同步对象x发出一个wait()调用,该线程会暂停执行,被调对象进入等待状态,直到被唤醒或等待时间到。Java有没有goto?Goto—java中的保存字,现在没有在java中使用。数组有没有length()这个方法?String有没有length()这个方法?数组没有length()这个方法,有length的属性。String有有length()这个方法。Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。假如在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。假如在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。Set里的元素是不能反复的,那么用什么方法来区分反复与否呢?是用==还是equals()?它们有何区别?Set里的元素是不能反复的,那么用iterator()方法来区分反复与否。equals()是判读两个Set是否相等。equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。给我一个你最常见到的runtimeexception。ArithmeticException,ArrayStoreException,BufferOverflowException,BufferUnderflowException,CannotRedoException,CannotUndoException,ClassCastException,CMMException,ConcurrentModificationException,DOMException,EmptyStackException,IllegalArgumentException,IllegalMonitorStateException,IllegalPathStateException,IllegalStateException,ImagingOpException,IndexOutOfBoundsException,MissingResourceException,NegativeArraySizeException,NoSuchElementException,NullPointerException,ProfileDataException,ProviderException,RasterFormatException,SecurityException,SystemException,UndeclaredThrowableException,UnmodifiableSetException,UnsupportedOperationExceptionerror和exception有什么区别?error表达恢复不是不也许但很困难的情况下的一种严重问题。比如说内存溢出。不也许指望程序能解决这样的情况。exception表达一种设计或实现问题。也就是说,它表达假如程序运营正常,从不会发生的情况。List,Set,Map是否继承自Collection接口?List,Set是Map不是abstractclass和interface有什么区别?声明方法的存在而不去实现它的类被叫做抽象类(abstractclass),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义staticfinal成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?都不能接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承实体类(concreteclass)?接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。启动一个线程是用run()还是start()?启动一个线程是调用start()方法,使线程所代表的虚拟解决机处在可运营状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运营。run()方法可以产生必须退出的标志来停止一个线程。构造器Constructor是否可被override?构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。是否可以继承String类?String类是final类故不可以继承。当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?不能,一个对象的一个synchronized方法只能由一个线程访问。try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?会执行,在return前执行。编程题:用最有效率的方法算出2乘以8等於几?有C背景的程序员特别喜欢问这种问题。2<<3两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?不对,有相同的hashcode。当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?是值传递。Java编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?switch(expr1)中,expr1是一个整数表达式。因此传递给switch和case语句的参数应当是int、short、char或者byte。long,string都不能作用于swtich。编程题:写一个Singleton出来。Singleton模式重要作用是保证在Java应用程序中,一个类Class只有一个实例存在。一般Singleton模式通常有几种种形式:第一种形式:定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。publicclassSingleton{privateSingleton(){}//在自己内部定义自己一个实例,是不是很奇怪?//注意这是private只供内部调用privatestaticSingletoninstance=newSingleton();//这里提供了一个供外部访问本class的静态方法,可以直接访问publicstaticSingletongetInstance(){returninstance;}ﻩ}第二种形式:publicclassSingleton{privatestaticSingletoninstance=null;publicstaticsynchronizedSingletongetInstance(){//这个方法比上面有所改善,不用每次都进行生成对象,只是第一次//使用时生成实例,提高了效率!if(instance==null)instance=newSingleton();returninstance;}}其他形式:定义一个类,它的构造函数为private的,所有方法为static的。一般认为第一种形式要更加安全些Hashtable和HashMapHashtable继承自Dictionary类,而HashMap是Java1.2引进的Mapinterface的一个实现HashMap允许将null作为一个entry的key或者value,而Hashtable不允许尚有就是,HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。由于contains方法容易让人引起误解。最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap就必须为之提供外同步。Hashtable和HashMap采用的hash/rehash算法都大约同样,所以性能不会有很大的差异。到底Java是如何传递参数的?是byvalue或byreference?

String这个类型的class为什么定义成final?继承了一个class叫做Frotz,编译器却给我“NoconstuctorFrotz()intheclass”这样的错误提醒,为什么呢?ﻫSuper(“aaaa”);如何比较两个类型为String的字符串?ﻫequals

float和Float有什么区别?

简朴类型,引用类型,封装类如何将字串String转换成整数int?ﻫInteger.parseInt()Strings=newString("xyz");创建了几个StringObject?

给我一个你最常见到的runtimeexception。ﻫNullPointerExceptionabstractclass和interface有什么区别?ﻫ启动一个线程是用run()还是start()?

try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?ﻫ有13个小球,其中有一个和其他的重量不同样,只用天平称量3次,如何找出坏球?ﻫ已有学员信息表{学号;姓名},表中已有记录:{1,张一;2,张二;…….100,张一百},现在要把李四放到学号54的位置,后面的其他学员,学号依次递增,请写出sql语句实现。ﻫupdatestudent1setid=id+1whereid>=54;insertintostudent1values(54,'ab');已有学员信息表{学号,班级,学科,姓名,成绩},现要查询出各班语文成绩前10名,并且数学成绩不在倒数10名范围内的人员信息,请写出sql语句实现。

select*from(select*from信息表where学科=’语文’orderby成绩desc)whererownum<=10minusselect*from(select*from信息表where学科=’数学’orderby成绩asc)whererownum<=10请写出你知道的几种J2EE的核心技术的名称,并简要解释。

ServletJSPJNDIRMIJDBCJavaMailJMSJTA/JTSEJB斯诺克台球共有15*8个一分球,2,3,4,5,6,7分球各一个,规则是先打一个最低分球,然后可以打一个其他分值的球,如此反复,假如台面尚有更低分值的球,打入的高分球计分,同时拿出来放回原位置,规定写一段简朴的java函数,实现输入台面上剩余球的数目,计算出可得的最高分。(不考虑罚分等特殊情况)ﻫ比较Java开发中常用的XML解析API,说明各自的原理及优缺陷。写一个应用程序,接受用户输入的日期参数(格式为字符串:yyyy-mm-dd),在控制台输出该日期前一天的日期(格式与输入参数相同),规定代码清楚规范、具有良好的可读性和容错能力。如何在Weblogic8中配置JAVA消息服务(JMS)?写出需要配置的项目及环节。已知weblogic服务器的的IP地址为192.168.0.1,domain的端口为7001,用户名密码均为weblogic,其中部署了一个会话Bean,主接口为BookHome,远程接口为Book,实现类为BookBean,Jndi名称为Book,写一段程序调用该会话Bean的getBooks()方法。Hashtableh=newHashtable();h.Contextctx=newIn

温馨提示

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

评论

0/150

提交评论