欢迎您参加东信北邮应聘人员笔试!请您先仔细阅读以下注意事项:1、笔试时间为90分钟,请抓紧时间,先挑选您会做的题目做答。笔试不计分,将依您题目完成的数量及质量进行综合评定。每套招聘试题均配有一道选做题,如您本试题答完后仍未到交卷时间且自愿选答,请向笔试负责人索取配套的选做题试卷。(答对选做题将增加您的笔试成功率。)2、笔试结束后,请您将试卷及《职位申请表》一起交给笔试负责人。我公司会尽量在笔试后3个工作日内以电话方式约请通过者参加初试。祝您成功!东信北邮招聘试题(Java)笔试时间:90分钟姓名联系电话1、有如下变量定义:publicclassTest{publicintA;publicfinalintB;publicstaticintC;publicstaticfinalintD;}请说明A、B、C、D四个变量有什么区别?2、有如下类和方法定义:publicfinalclassE{};publicclassF{publicfinalvoidG(){}}请说明用final修饰的类E和方法G有什么含义?3、有下面程序,请给出程序的输出://FatherClass.javapackagetest;publicclassFatherClass{publicFatherClass(){System.out.println("FatherClassCreate");}}//ChildClass.javapackagetest;importtest.FatherClass;publicclassChildClassextendsFatherClass{publicChildClass(){System.out.println("ChildClassCreate");}publicstaticvoidmain(String[]args){FatherClassfc=newFatherClass();ChildClasscc=newChildClass();}}执行程序:C:>javatest.ChildClass请写出程序的输出结果。4、补充完成下面方法,实现字符串的反转。publicStringreverse(Stringsrc){//在这里补充代码}5、补充完成下面的monitor方法。有如下要求a)要在monitor方法中调用invoke方法,并返回invoke()方法的返回值;b)要求在monitor方法中计算invoke方法的执行时间(精确到毫秒),并在方法返回前将这个时间打印在屏幕上(10分)publicStringinvoke()throwsException{…..}publicStringmonitor()throwsException{//在这里补充代码}6、JavaIO结构中InputStreamOutputStream与ReaderWriter的区别?7、使用synchronized关键字实现Semaphore接口,实现信号量同步功能。publicinterfaceSemaphore{voidacquire();//获取一个信号量voidrelease();//释放一个信号量}8、编写代码实现一个简单的线程池。选做题:有一个模块,有如下需求:a)和外部系统通过socket连接,外部系统为server,模块为client。b)外部系统通过socket进行"模块->外部系统"的单向命令发送,命令模式为"请求->响应",命令是同步的,在一个socket中,前一个命令没有执行完前,不允许发送第二个命令。c)模块可以和一个外部系统建立多个连接,一个外部系统的多个连接之间采用负载平衡。d)模块可以同时连接两个外部系统,两个外部系统之间采用主备方式。e)模块需要增加统计功能,要能统计通过每个socket发送的消息数与一个外部系统的所有连接的消息总数向所有外部系统发送的消息总数。f)模块需要增加监控功能,要能在线跟踪每个socket、与一个外部系统以及与所有外部系统发送的请求和接收的响应。请设计此模块,要求如下:a)画出相应的类结构图和运行时对象结构图。结构图不要求特别详细,但要求能够基本体现出上述模块需求。在结构图中要求体现出模块调用者和外部系统的位置。b)要求采用适当的设计模式,设计时要考虑系统的灵活性、可扩展性和可维护性。c)请说明你使用的设计模式以及简单说明使用这些模式的目的。