应聘Java笔试时可能出现问题及其答案Word文件下载.docx

上传人:b****5 文档编号:16626302 上传时间:2022-11-24 格式:DOCX 页数:17 大小:26.94KB
下载 相关 举报
应聘Java笔试时可能出现问题及其答案Word文件下载.docx_第1页
第1页 / 共17页
应聘Java笔试时可能出现问题及其答案Word文件下载.docx_第2页
第2页 / 共17页
应聘Java笔试时可能出现问题及其答案Word文件下载.docx_第3页
第3页 / 共17页
应聘Java笔试时可能出现问题及其答案Word文件下载.docx_第4页
第4页 / 共17页
应聘Java笔试时可能出现问题及其答案Word文件下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

应聘Java笔试时可能出现问题及其答案Word文件下载.docx

《应聘Java笔试时可能出现问题及其答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《应聘Java笔试时可能出现问题及其答案Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。

应聘Java笔试时可能出现问题及其答案Word文件下载.docx

是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的

  4、多线程有几种实现方法,都是什么?

同步有几种实现方法,都是什么?

多线程有两种实现方法,分别是继承Thread类与实现Runnable接口

  同步的实现方面有两种,分别是synchronized,wait与notify

  5、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?

  答:

父类:

  packagetest;

  publicclass 

FatherClass

  {

  publicFatherClass()

   {

    System.out.println("

FatherClassCreate"

);

   }

  }

  子类:

  importtest.FatherClass;

ChildClassextendsFatherClass

   publicChildClass()

ChildClassCreate"

   publicstaticvoidmain(String[]args)

    FatherClassfc=newFatherClass();

    ChildClasscc=newChildClass();

  输出结果:

  C:

\>

javatest.ChildClass

  FatherClassCreate

  ChildClassCreate来源:

考试

6、内部类的实现方式?

 

示例代码如下:

OuterClass

   privateclassInterClass

    publicInterClass()

    {

     System.out.println("

InterClassCreate"

    }

   publicOuterClass()

    InterClassic=newInterClass();

OuterClassCreate"

    OuterClassoc=newOuterClass();

  输出结果:

javatest/OuterClass

  InterClassCreate

  OuterClassCreate

  再一个例题:

  publicclassOuterClass

  {

   privatedoubled1=1.0;

//insertcodehere

  }

  Youneedtoinsertaninnerclassdeclarationatline3.Whichtwoinnerclassdeclarationsare

  valid?

(Choosetwo.)

  A.classInnerOne

   publicstaticdoublemethoda(){returnd1;

}

  B.publicclassInnerOne

   staticdoublemethoda(){returnd1;

 }

  C.privateclassInnerOne

   doublemethoda(){returnd1;

  D.staticclassInnerOne

   protecteddoublemethoda(){returnd1;

  E.abstractclassInnerOne

   publicabstractdoublemethoda();

  说明如下:

  一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。

故A、B错

  二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;

returnd1出错。

故D错

  三.非静态内部类的非静态成员可以访问外部类的非静态变量。

故C正确

  四.答案为C、E

  7、垃圾回收机制,如何优化程序?

  8、float型floatf=3.4是否正确?

不正确。

精度不准确,应该用强制类型转换,如下所示:

floatf=(float)3.4

9、介绍JAVA中的CollectionFrameWork(包括如何写自己的数据结构)?

CollectionFrameWork如下:

  Collection

  ├List

  │├LinkedList

  │├ArrayList

  │└Vector

  │ └Stack

  └Set

  Map

  ├Hashtable

  ├HashMap

  └WeakHashMap

  Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)

  Map提供key到value的映射

  10、Java中异常处理机制,事件机制?

  11、JAVA中的多形与继承?

  12、抽象类与接口?

抽象类与接口都用于抽象,但是抽象类(JAVA中)可以有自己的部分实现,而接口则完全是一个标识(同时有多重继承的功能)。

  13、Java的通信编程,编程题(或问答),用JAVASOCKET编程,读服务器几个字符,再写入本地显示?

Server端程序:

  import.*;

  importjava.io.*;

  publicclassServer

   privateServerSocketss;

   privateSocketsocket;

   privateBufferedReaderin;

   privatePrintWriterout;

   publicServer()

    try

     ss=newServerSocket(10000);

     while(true)

     {

      socket=ss.accept();

      StringRemoteIP=socket.getInetAddress().getHostAddress();

      StringRemotePort="

:

"

+socket.getLocalPort();

      System.out.println("

Aclientcomein!

IP:

+RemoteIP+RemotePort);

      in=newBufferedReader(newInputStreamReader(socket.getInputStream()));

      Stringline=in.readLine();

Cleintsendis:

+line);

      out=newPrintWriter(socket.getOutputStream(),true);

      out.println("

YourMessageReceived!

      out.close();

      in.close();

      socket.close();

     }

    catch(IOExceptione)

     out.println("

wrong"

   publicstaticvoidmain(String[]args)

    newServer();

  };

  Client端程序:

  publicclassClient

   Socketsocket;

   BufferedReaderin;

   PrintWriterout;

   publicClient()

TrytoConnectto127.0.0.1:

10000"

socket=newSocket("

127.0.0.1"

10000);

TheServerConnected!

PleaseentersomeCharacter:

     BufferedReaderline=newBufferedReader(new

     InputStreamReader(System.in));

     out=newPrintWriter(socket.getOutputStream(),true);

     out.println(line.readLine());

     in=newBufferedReader(newInputStreamReader(socket.getInputStream()));

     System.out.println(in.readLine());

     out.close();

     in.close();

     socket.close();

    catch(IOExceptione)

Wrong"

    newClient();

  14、用JAVA实现一种排序,JAVA类实现序列化的方法(二种)?

如在COLLECTION框架中,实现比较要实现什么样的接口?

用插入法进行排序代码如下

  importjava.util.*;

  class 

InsertSort

   ArrayListal;

   publicInsertSort(intnum,intmod)

    al=newArrayList(num);

    Randomrand=newRandom();

TheArrayListSortBefore:

    for(inti=0;

i) 

     al.add(newInteger(Math.abs(rand.nextInt())%mod+1));

al["

+i+"

]="

+al.get(i));

   publicvoidSortIt()

    ntegertempInt;

    intMaxSize=1;

    for(inti=1;

     tempInt=(Integer)al.remove(i);

     if(tempInt.intValue()>

=((Integer)al.get(MaxSize-1)).intValue())

      al.add(MaxSize,tempInt);

      MaxSize++;

      System.out.println(al.toString());

     }

     else

      for(intj=0;

j) 

      {

       if(((Integer)al.get(j)).intValue()>

=tempInt.intValue())

       {

        al.add(j,tempInt);

        MaxSize++;

        System.out.println(al.toString());

        break;

       }

      }

TheArrayListSortAfter:

    for(inti=0;

    InsertSortis=newInsertSort(10,100);

    is.SortIt();

  JAVA类实现序例化的方法是实现java.io.Serializable接口

  Collection框架中实现比较要实现Comparable接口和Comparator接口

15、编程:

编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。

但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。

代码如下:

SplitString

   StringSplitStr;

   intSplitByte;

   publicSplitString(Stringstr,intbytes)

    SplitStr=str;

    SplitByte=bytes;

TheStringis:

'

+SplitStr+"

;

SplitBytes="

+SplitByte);

   publicvoidSplitIt()

    intloopCount;

    loopCount=(SplitStr.length()%SplitByte==0)?

(SplitStr.length()/SplitByte):

(SplitStr.length()/SplitByte+1);

WillSplitinto"

+loopCount);

    for(inti=1;

i<

=loopCount;

i++)

     if(i==loopCount)

      System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));

      System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));

    SplitStringss=newSplitString("

test中dd文dsaf中男大3443n中国43中国人

    0ewldfls=103"

4);

    ss.SplitIt();

  16、JAVA多线程编程。

用JAVA写一个多线程程序,如写四个线程,二个加1,二个对一个变量减一,输出。

  17、STRING与STRINGBUFFER的区别。

STRING的长度是不可变的,STRINGBUFFER的长度是可变的。

如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法来

Jsp方面

  1、jsp有哪些内置对象?

作用分别是什么?

JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):

  request用户端请求,此请求会包含来自GET/POST请求的参数

  response网页传回用户端的回应

  pageContext网页的属性是在这里管理

  session与请求有关的会话期

  applicationservlet正在执行的内容

  out用来传送回应的输出

  configservlet的构架部件

  pageJSP网页本身

  exception针对错误网页,未捕捉的例外

  2、jsp有哪些动作?

JSP共有以下6种基本动作

  jsp:

include:

在页面被请求的时候引入一个文件。

useBean:

寻找或者实例化一个JavaBean。

setProperty:

设置JavaBean的属性。

getProperty:

输出某个JavaBean的属性。

forward:

把请求转到一个新的页面。

plugin:

根据浏览器类型为Java插件生成OBJECT或EMBED标记

  3、JSP中动态INCLUDE与静态INCLUDE的区别?

动态INCLUDE用jsp:

include动作实现它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面

  4、两种跳转方式分别是什么?

有什么区别?

有两种,分别为:

  前者页面不会转向include所指的页面,只是显示该页的结果,主页面还是原来的页面。

执行完后还会回来,相当于函数调用。

并且可以带参数。

后者完全转向新页面,不会再回来。

相当于goto语句。

  Servlet方面

  1、说一说Servlet的生命周期?

servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。

这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。

  2、Servlet版本间(忘了问的是哪两个版本了)的不同?

  3、JAVASERVLETAPI中forward()与redirect()的区别?

前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;

后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。

这样,从浏览器的地址栏中可以看到跳转后的链接地址。

所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。

在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。

  4、Servlet的基本架构

  publicclassServletNameextendsHttpServlet

   publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throws

   ServletException,IOException 

{}

   publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throws

{}

  Jdbc、Jdo方面

  1、可能会让你写一段Jdbc连Oracle的程序,并实现数据查询.

程序如下:

  packagehello.ant;

  impo

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 畜牧兽医

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

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