您的当前位置:首页正文

各公司面试题(java)

2021-12-13 来源:步旅网
 各公司面试题 华为的JAVA面试题 (后记:没有想到华为的面试题就是非同一般,很多题不是一眼就能够看得出来,至少对我这种鸟来说是这样。对我个人来说,看看这样的题,可能比看《Think In Java》都还要好,因为这里面有很多的东西,都是我们平时没有太在意,或者是只是懂一点皮毛而已,通过做一下这样的练习,把自己不知道、不熟悉的知识点,利用这个机会好好的巩固一下。这些答案是我自己做的,有一些是从网上来的,有一部是自己做的,并且还有一部份没有做完,我不敢保证都对,所以请你在引用的时候,务必通过自己核对一下。当然,我既然能够把这些答案放在这里,那说明我肯定是自己检验了一遍的,也不是那么恐怖的) QUESTION NO: 1 Public class Test1 { Public static void changeStr(String str){ str=\"welcome\"; } Public static void main(String[] args) { String str=\"1234\"; changeStr(str); System.out.println(str); } } //输出结果:1234 //这里虽然是一个静态方法,但是里面的变量是一个局部变量, //所以这里不因为是静态方法,就误认为里面的变量也是静态变量了 QUESTION NO:2 Public class Test2 { Static boolean foo(char c) { System.out.print(c); Return true; } Public static void main(String[] argv) { int i = 0; //for(65;88&&(i<2);67) for (foo('A'); foo('B') && (i < 2); foo('C')) { i++; foo('D'); } } } /* What is the result? A. ABDCBDCB B. ABCDABCD C. Compilation fails. D. An exception is thrown at runtime. //输出结果是:ABDCBDCB 分析:FOR循环里面讲究的条件要为真,与你的判断式是什么没有关系 就像这里,虽然是打印的字母,但是却不是false,所以可以执行 第一次进行循环: foo('A')打印字母A,(注:这里不是false条件就默认为true条件) foo('B')打印字母B,i=0,比较(i < 2),条件为true,进行循环体,foo('D')打印Dfoo('C')打印字母C Silence - 1 - 第二次循环: foo('B')打印B,i=1,比较(i < 2)为true,进行循环体,foo('D')打印D foo('C')打印字母C 第三次循环: foo('B')打印字母B,i=2,比较(i < 2)为false,退出循环,得结果 */ QUESTION NO: 3 1. class A { 2. protected int method1(int a, int b) { return 0; } 3. } Which two are valid in a class that extends class A? (Choose two) 只要参数列表相同,就不能考虑是重载 A. public int method1(int a, int b) { return 0; }重写 B. private int method1(int a, int b) { return 0; }参数列表相同,但访问权限变低了,不可以 C. private int method1(int a, long b) { return 0; }参数列表不同,重载 D. public short method1(int a, int b) { return 0; }参数列表相同,但返回值不同 E. static protected int method1(int a, int b) { return 0; } 重载:参数列表相同,返回值相同,访问权限高于被重写的方法,抛出的异常低于被重写的方法 publicclass B extends A{ /** *@paramargs */ //can not reduce the visibility of the inherited method from A //即不能够使从类A中继续来的方法的可见性降低 //private int method1(int a, int b) { return 0; } //This static method cannot hide the instance method from A //静态方法不能够隐藏继承于A的实例 //static protected int method1(int a, int b) { return 0; } //返回类型与A中的该方法不一致 //public short method1(int a, int b) { return 0; } /***总结:类的继承中,如果要想重载父类的方法,必须要和父类中的返回类型、可见性等等都要操作一致 *否则,程序就会报错。一定遵守子类要遵从于父类的原则 *而我选择的答案居然是privateintmethod1和staticprotectedint *我选择第一个的错误理由是:因为原来为保护的,如果我这里设为public,那么就扩展了其原来的可见性 *本来原来就是对包外不可见的,现在变成对包外可见的了,所以就选择的是private *选择第二个的错误理由是:都是保护的,这里只是变成了静态的而已 */ //这里是写了一个重载方法,因为参数类型不一致,不会报错 Private int method1(int a, long b) { return 0; } //可见性可以增大,但是不能够缩小,正确 Public int method1(int a, int b) { return 0; } Public static void main(String[] args) { // TODO Auto-generated method stub } } QUESTION NO: 4 1. public class Outer{ 2. public void someOuterMethod() { 3. // Line 3 4. } Silence - 2 - 5. public class Inner{} 6. public static void main( String[]argv ) { 7. Outer o = new Outer(); 8. // Line 8 9. } 10. } Which instantiates an instance of Inner? A. new Inner(); // At line 3 B. new Inner(); // At line 8 C. new o.Inner(); // At line 8 D. new Outer.Inner(); // At line 8//new Outer().new Inner() 答案如下: publicclass Outer { publicvoid someOuterMethod() { // Line 3 new Inner();//放在这里不出错 } publicclass Inner { } publicstaticvoid main(String[] argv) { Outer o= new Outer(); // Line 8 //o不能够被解释成为一种类型,出错 //new o.Inner(); /** *下面两种用法,都报下面的错误: *NoenclosinginstanceoftypeOuterisaccessible. *Mustqualifytheallocationwithanenclosinginstance *oftypeOuter(e.g.x.newA()wherexisaninstanceofOuter) */ //new Outer.Inner(); //new Inner(); } } QUESTION NO: 5 Which method is used by a servlet to place its session ID in a URL that is written to the servlet’s response output stream? (译:那个方法是servlet用于将其session ID入在一个URL中,该URL写入servlet的响应输出流) A. The encodeURL method of the HttpServletRequest interface. B. The encodeURL method of the HttpServletResponse interface. C. The rewriteURL method of the HttpServletRequest interface. D. The rewriteURL method of the HttpServletResponse interface. QUESTION NO: 6 Which two are equivalent? (Choose two) A. <%= YoshiBean.size%> B. <%= YoshiBean.getSize()%> C. <%= YoshiBean.getProperty(\"size\")%> D. E. F. Silence - 3 - G. QUESTION NO: 7 Which of the following statements regarding the lifecycle of a session bean are correct? 1. java.lang.IllegalStateException is thrown if SessionContext.getEJBObject() is invoked when a stateful session bean instance is passivated. 2. SessionContext.getRollbackOnly() does not throw an exception when a session bean with bean-managed transaction demarcation is activated. 3. An exception is not thrown when SessionContext.getUserTransaction() is called in the afterBegin method of a bean with container-managed transactions. 4. JNDI access to java:comp/env is permitted in all the SessionSynchronization methods of a stateful session bean with container-managed transaction demarcation. 5. Accessing resource managers in the SessionSynchronization.afterBegin method of a stateful session bean with bean-managed transaction does not throw an exception. 第二部分:概念题 1. 描述Struts体系结构?对应各个部分的开发工作主要包括哪些?Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的体系结构与工作原理如下图2所示: 1)模型(Model) 在Struts的体系结构中,模型分为两个部分:系统的内部状态和可以改变状态的操作(事务逻辑)。内部状态通常由一组Actinform Bean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。比如购物车bean,它拥有用户购买商品的信息,可能还有checkOut()方法用来检查用户的信用卡,并向仓库发定货信息。小型程序中,操作可能会被内嵌在Action类,它是struts框架中控制器角色的一部分。当逻辑简单时这个方法很适合。建议用户将事务逻辑(要做什么)与Action类所扮演的角色(决定做什么)分开。 2)视图(View) 视图主要由JSP建立,struts包含扩展自定义标签库(TagLib),可以简化创建完全国际化用户界面的过程。目前的标签库包括:Bean Tags、HTML tags、Logic Tags、Nested Tags 以及Template Tags等。 3)控制器(Controller) 在struts中,基本的控制器组件是ActionServlet类中的实例servelt,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义。对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成的,其中Action扮演了真正的业务逻辑的实现者,ActionMapping与ActionForward则指定了不同业务逻辑或流程的运行方向。struts-config.xml 文件配置控制器。 2. XML包括哪些解释技术,区别是什么? 包括:DOM(Document Object Modal)文档对象模型,SAX(Simple API for XML)。DOM是一次性将整个文档读入内存操作,如果是文档比较小,读入内存,可以极大提高操作的速度,但如果文档比较大,那么这个就吃力了。所以此时SAX应用而生,它不是一次性的将整个文档读入内存,这对于处理大型文档就比较就力了 Silence - 4 - 3. JSP有哪些内置对象和动作?它们的作用分别是什么? JSP共有以下9种基本内置组件: request 用户端请求,此请求会包含来自GET/POST请求的参数 response 网页传回用户端的回应 pageContext 网页的属性是在这里管理 session 与请求有关的会话期 application servlet 正在执行的内容 out 用来传送回应的输出 config servlet的构架部件 page JSP网页本身 exception 针对错误网页,未捕捉的例外 常用的组件:request、response、out、session、application、exception 4、SQL问答题 SELECT * FROM TABLE 和 SELECT * FROM TABLE WHERE NAME LIKE '%%' AND ADDR LIKE '%%' AND (1_ADDR LIKE '%%' OR 2_ADDR LIKE '%%' OR 3_ADDR LIKE '%%' OR 4_ADDR LIKE '%%' ) 的检索结果为何不同? 答:我做了一下测试,在ACCESS里面,用它的查询,这样会和在MYSQL得到不同的结果,各位不妨试试,我昨天就是在ACCESS里用SQL查询,得到的结果为空,就是没有记录;而在MYSQL里面,条件为空的记录不显示,其它的都显示。 5、SQL问答题 表结构: 1、 表名:g_cardapply 字段(字段名/类型/长度): g_applyno varchar 8;//申请单号(关键字) g_applydate bigint 8;//申请日期 g_state varchar 2;//申请状态 2、 表名:g_cardapplydetail 字段(字段名/类型/长度): g_applyno varchar 8;//申请单号(关键字) g_name varchar 30;//申请人姓名 g_idcard varchar 18;//申请人身份证号 g_state varchar 2;//申请状态 其中,两个表的关联字段为申请单号。 题目: 1、 查询身份证号码为440401430103082的申请日期 Select g_applydate from g_cardapply where g_cardapply.g_applno= (select g_cardapplycarddetail.g_applyno from g_cardapplycarddetail Where g_cardapplycarddetail.g_idcard=’ 440401430103082’); Select g_cardapply.g_ applydate from g_cardapply, g_cardapplydetail where g_cardapplydetail.g_idcard=’’ and g_cardapply.g_applyno=g_cardapplydetail.g_applyno 2、 查询同一个身份证号码有两条以上记录的身份证号码及记录个数 3、 将身份证号码为440401430103082的记录在两个表中的申请状态均改为07 Update g_cardapply. g_state=’07’, g_cardapplydetail .g_state Silence - 5 - 4、 删除g_cardapplydetail表中所有姓李的记录 ------------------------******测试******----------------- create database mianshi use mianshi; create table g_cardapply( g_applyno varchar(8), g_applydate bigint, g_state varchar(20) ) go create table g_cardapplydetail( g_applyno varchar(8), g_name varchar(30), g_idcard varchar(18), g_state varchar(20) ) 1、select a1.g_applydate from g_cardapply as a1 inner join g_cardapplydetail a2 on a1.g_applyno=a2.g_applyno where a2.g_idcard=\"123\" ; 2、select g_idcard,count(g_idcard) from g_cardapplydetail group by g_idcard having count(g_idcard)>=2; 3、update g_cardapply set g_state=603 from g_cardapply as g_d inner join g_cardapplydetail as g_c on g_d.g_applyno=g_c.g_applyno and g_idcard='123';更新第一个表的g_state update g_cardapplydetail set g_state=603 where g_idcard='123'; 华为Java笔试题: 一、 单项选择题 1.Java是从( )语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确( ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D. 以上都不正确 答案:B 3.下列说法正确的有( ) A. class中的constructor不可省略 构造函数可以忽略,但是系统会默认给一个无参的构造函数 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D. 一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是( ) A.java.sql B.java.awt C.java.lang D.java.swing 答案:A 5.下列运算符合法的是( ) A.&& B.<> C.if D.:= 答案:A 6.执行如下程序代码 a=0;c=0; Silence - 6 - do{ --c; a=a-1; }while(a>0); 后,C的值是( ) A.0 B.1 C.-1 D.死循环 答案:C 7.下列哪一种叙述是正确的( ) A. abstract修饰符可修饰字段、方法和类 B. 抽象方法的body部分必须用一对大括号{ }包住 C. 声明抽象方法,大括号可有可无 D. 声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是( ) A. 形式参数可被视为local variable B. 形式参数可被字段修饰符修饰 C. 形式参数为方法被调用时,真正被传递的参数 D. 形式参数不可以是对象 答案:A 9.下列哪种说法是正确的( ) A. 实例方法可直接调用超类的实例方法 B. 实例方法可直接调用超类的类方法 C. 实例方法可直接调用其他类的实例方法 D. 实例方法可直接调用本类的类方法 答案:D 二、 多项选择题 1.Java程序的种类有( ) 答案:BC A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( ) A. 环境变量可在编译source code时指定 B. 在编译程序时,所能指定的环境变量不包括class path C. javac一次可同时编译数个Java源文件 D. javac.exe能指定编译结果要置于哪个目录(directory) 答案:BCD 3.下列标识符不合法的有( ) A.new B.$Usdollars C.1234 D.car.taxi 答案:ACD 4.下列说法错误的有( ) A. 数组是一种对象 B. 数组属于一种原生类 C. int number=[]={31,23,33,43,35,63} D. 数组的大小可以任意改变 答案:BCD 5.不能用来修饰interface的有( ) A.private B.public C.protected D.static 答案:ACD 6.下列正确的有( ) A. call by value不会改变实际参数的数值 B. call by reference能改变实际参数的参考地址 Silence - 7 - C. call by reference不能改变实际参数的参考地址 D. call by reference能改变实际参数的内容 答案:ACD 7.下列说法错误的有( ) A. 在类方法中可用this来调用本类的类方法 B. 在类方法中调用本类的类方法时可直接调用 C. 在类方法中只能调用本类中的类方法 D. 在类方法中绝对不能调用实例方法 答案:ACD 8.下列说法错误的有( ) A. Java面向对象语言容许单独的过程与函数存在 B. Java面向对象语言容许单独的方法存在 C. Java语言中的方法属于类中的成员(member) D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同 答案:ABC 9.下列说法错误的有( ) A. 能被java.exe成功运行的java class文件必须有main()方法 B. J2SDK就是Java API C. Appletviewer.exe可利用jar选项运行.jar文件 D. 能被Appletviewer成功运行的java class文件必须有main()方法 答案:BCD 三、 判断题 1.Java程序中的起始类名称必须与存放该类的文件名相同。( ) 答案:正确 2.Unicode是用16位来表示一个字的。( ) 答案:正确 3.原生类中的数据类型均可任意转换。( ) 答案:错误 1.Java的有哪些集合接口? 2.MVC? 3.set的哪个实现类有排序的功能? 4.hibernate一对多,映射文件怎么配置? 5.hibernate,类A与类B存在映射关系,怎样在加载类A的时候一起加载类B? 6.hibernate,对集合对象怎样排序? 7.hibernate的O/X映射? 2.struts的构成? 3.dom,sax解析的异同? 4.vector和arraylist的异同?treemap和hashmap的异同? 5.怎么在struts中加入一个action? 6.public,private,proteced和不写时,他们的作用域/ 7.java5.0后的多线程机制相对于以前,有什么改进?优点? 8.IOC是什么?写一段IOC的代码? 10.链表怎么去删除一个节点? 11 spring的注入反转 某公司java笔试题.(超难) JAVA 招聘远程笔试题 请完成以下题目 1)现有Mysql数据库,写Spring + Hibernate的配置文件 数据库IP url: 127.0.0.1 DataBase: db1 Silence - 8 - 用户名/密码 username/password 表table1结构: id int (主键) name varchar 请编写以下文件 Spring的xml配置文件 Hbm文件 2)写一个webservice 接口定义: String sayHello(String name,String age) 请编写以下文件: WSDL文件: 3)根据xml schema生成xml Schema文件定义如下: 请写用xmlBean生成jar包,并编写一个程序生成一个xml文件,其中e11=11 e121=”e121”,只需要给出这个程序。 4)请写程序实现自动注册gmail的邮箱 界面输入内容: 用户名 / 密码 / 图片识别码 自动注册一个邮箱,如果能实现自动识别图片更佳 5)写程序用模拟登录gmail,并设置转发 界面输入内容: 用户名 / 密码 / 转发邮箱 登录gmail,设置邮件转发至 输入的转发邮箱地址 6)写程序用pop3收取gmail的邮件 界面输入内容 用户名 / 密码 收取邮箱的邮件,并解码后将标题显示出来 注: ?可使用各种开源的程序, ?Gmail使用SSL,可用HttpClient Silence - 9 - ?javax.mail包支持用SSL连接POP3服务器并收取邮件 ?只要求在windows下运行,可使用JNI调开源的图片验证码识别模块 ?4、5、6三题在面试时需要现场运行 大宇宙面试题

分三部分:智力题(40题)、专业题(分基础题、数据库题、JAVA题)、作文题(用中文写) 基础问答:(A卷,20题)

1.16进制的0.75可以表示成十进制的什么? 2.1031%5=131(余数为0),问,这是使用的几进制 A 6 b 7 c 8 d 9 4.真值表 5.与或非

交集和并集的题目 有张图的 在HTML中下列哪个是单体标签

A.
B.. C.. D. <select> 查找随机存储的数据比较好 查找有序存储的数据比较好 查找数据量大的数据比较好 查找数据量晓的数据比较好 二叉法查找数据的话以下什么是正确的<p>SQL题目共10题,总体来说不难 作文题<p>题目1:如何做个合格的程序员 题目2:谈下现大学课程的弊端<p>题目3:谈下苹果公司ipod的产品为什么能如此畅销 题目4:谈下你对开博客的看法 还有其他3个题目 另外个版本的<p>这套题是按应届生的标准考的,所以好多考的都是大学里面的理论知识,技术题中的JAVA题据他们人事讲不做什么要求。所以重点放基础知识题和SQL题。<p>富士通面试题<p>JAVA题(总共10题) 1. 2. 3. 4. 5. 6. }<p>You need to insert an inner class declaration at line 3. Which two inner class the clarations are valid?(choose two .) A. B.<p>class InnerOne{<p>}<p>public stetic double methoda(){return d1;}<p>public class InnerOne{<p>}<p>考throw 和throws<p>float型float f=3.4是否正确,错误的话写出正确的格式 string和stringbuffer区别<p>多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么? 考察全局变量和局部变量的概念的一道程序题,不难 public class OuterClass{ //insert code here<p>pricate double d1=1.0;<p>static double methoda (){return d1;} private class InnerOne{ double menthoda(){return d1;} C.<p>}<p>Silence<p>- 10 -<p>static class InnerOne{<p>protected double methoda(){return d1;} D. 7. 8.<p>编程题:求两个整数的最大公约数 编程题:写一个hashtable的遍历<p>}<p>abstract class InnerOne{<p>}<p>public abstract double methoda();<p>答案:C E 原因自己意会<p>9. 好像有这么一题:char型变量中能不能存储一个中文汉字?为什么? 还题忘了,是个问答题<p>富士通面试题<p>xml有那些解析技术?区别是什么? servlet的基本框架 wait()和sleep()的区别 解释名词UDDI,SOAP,WSDL public private protected friendly的区别 编程题:<p>137、内部类的实现方式? 答:示例代码如下: package test;<p>public class OuterClass {<p>private class InterClass {<p>public InterClass() {<p>System.out.println(\"InterClass Create\"); } }<p>public OuterClass() {<p>InterClass ic = new InterClass(); System.out.println(\"OuterClass Create\"); }<p>public static void main(String[] args) {<p>OuterClass oc = new OuterClass(); } } 输出结果:<p>C:\\>java test/OuterClass InterClass Create OuterClass Create 改错题:<p>public class OuterClass { private double d1 = 1.0; //insert code here<p>Silence<p>- 11 -<p>}<p>You need to insert an inner class declaration at line 3. W ch two inner class declarations are valid?(Choose two.) A. class InnerOne{<p>public static double methoda() {return d1;} }<p>B. public class InnerOne{<p>static double methoda() {return d1;} }<p>C. private class InnerOne{<p>double methoda() {return d1;} }<p>D. static class InnerOne{<p>protected double methoda() {return d1;} }<p>E. abstract class InnerOne{<p>public abstract double methoda(); } 说明如下:<p>一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。 故 A、B 错<p>二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。故 D 错<p>三.非静态内部类的非静态成员可以访问外部类的非静态变量。 故 C 正确 四.答案为C、E 徐钢(271442159) 18:17:09<p>还有一道大的编程题急不清楚了。 应该是用数组模拟写一个堆栈的程序<p>广信联面试题<p>1、 Hashtable是什么?Hashtablet 和Hashmap的区别,list和vector的区别?<p>2、 EJB是基于哪些技术?Sessionbean和Entitybean的区别?stateful和stateless的区别? 3、 Xml解析方法.<p>4、 JSP中forward和redsrect的区别? 5、 简述JSP中常见的几种内置对象. 6、 简述连接池的优点和原理.<p>7、 JSP中静态Include和动态Include的区别? 8、 抽象类和接口的区别?<p>9、 简述如何实现图片和文件的上传. 编程:<p>1、 显示系统昨天当前时间。 2、 读写文件,做一个计数器。 3、 写一个单例模式。<p>4、 写一个你所主为的分页显示。 数据库<p>1、 删除表中重复的数据(考虑各种情况,并写出相应的SQL) 2、 Delete from tablea 和trunate from tablea 的区别。 能力测试题<p>1、 你认为搜索技术的下一个历史性突破是什么?(自已意义) 2、 1 1 1 2<p>1<p>Silence<p>- 12 -<p>1 1<p>2 1 1 1 1 2 2 1<p>下一行应该是什么?简述算法。<p>3、数10,9,60,90,70,66,下一个数是什么? 江苏集群信息产业股份有限公司技术人员测试题<p>1.try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?<p>2.简述你所熟知的几种JAVA模式.<p>3.简述你对你所熟知的几种WEB应用程序框架的理解,如MVC,SPRING等. 4.简述白盒测试,黑盒测试,重构的内容及作用. 5.简述JSP与servlet的异同,简述servlet的生命周期 6.说说A.equal(B)与A==B的区别<p>7.请用一条SQL语句找到A表aID中存在但在B表bID中却不存在的记录 表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a20050114 5 a20050115 表B记录如下: bID bName 1 2006032401 2 2006032402 3 2006032403 4 2006032404 8 2006032408 8.线程是怎样实现同步的?<p>9.说说你对WEB开发的发展方向的看法 10.指出下列程序运行的结果 public class Example{<p>String str=new String(\"good\"); char[]ch={'a','b','c'};<p>public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+\" and \"); Sytem.out.print(ex.ch); }<p>public void change(String str,char ch[]){ str=\"test ok\"; ch[0]='g'; } }<p>11.XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?12.java中实现多态的机制是什么?<p>13.MVC的各个部分都有那些技术来实现?如何实现? 14.请问下面这段代码有错吗?如果有错请问错在何处? public class Something { void doSomething () {<p>Silence<p>- 13 -<p>private String s = \"\"; int l = s.length(); } }<p>15.说说你所知道的UML图. 16.设计数据库应注意那些问题?<p>金门户<p>一、简答题<p>String 和StringBuffer 的区别 Jsp 内置对象 方法 面向对象的特征<p>异常处理机制及简单应用 ArrayList Linklist vector 的区别 还有几个记不清了 二、名词解释: JNDI JMS web容器<p>三、选择题(主要是 core java 方向的基础) Final 抽象类的知识 四、编程题<p>把 数字 转换成 人民币表达方式<p>例如(1111)转成 “一千一百一拾一元整”; 南京瑞钥<p>写5道多表的查询语句,4道是关联两张表的,一道是3张表的。是写SQL查询语句的。5道题都是,是多表查询的,也就是多表连接。<p>苏州华冠<p>1.cvs是干什么的(英文叙述)√<p>CVS是一个C/S系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步 的目的。 CVS is a C / S system, a number of developers through a central version control system to record versions of documents, to achieve The purpose of synchronized files.<p>2.购物车用户信息是放在session?如果是,那么出现病毒等原因导致ie死机你是怎么办的?√<p>是,通过服务器设置某时间内,客户会话没有响应,关闭会话;或者在代码里关闭会话;(cookie./session) 3.用hibernate作映射的时候,如果你的数据库表结构发生变化了,那么映射文件改怎么改? √<p>可以用工具根据数据库表自动生成映射文件,也可以根据表结构的变化修改映射文添加 修改或者删除对应得属性。 4.如果字段的类型或者字段值有变化是不是映射文件要做变动?√ 一般情况下不用,因为Hibernate有自动检查转换机制 5.jdbc连接数据库的流程try<p>{ Class.forName(\"sun.jdbc.odbc.JdbcOdbcDriver\"); //(1)创建与数据库的连接<p>Connection con=DriverManager.getConnection(\"jdbc:odbc:DatabaseDSN\Statement stmt=con.createStatement();<p>ResultSet rs=stmt.executeQuery(\"select * from DBTableName\");//(2)发送SQL语句到数据库中 while(rs.next())<p>{ String name=rs.getString(\"Name\") ; //(3)处理数据并查询结果。 int age=rs.getInt(\"age\"); float wage=rs.getFloat(\"wage\"); } rs.close(); }<p>catch(SQLException e)<p>{ System.out.println(\"SQLState:\"+ e.getSQLState()); System.out.println(\"Message:\" + e.getMessage());<p>Silence<p>- 14 -<p>//(4)关闭<p>stmt.close(); con.close();<p>System.out.println(\"Vendor:\" + e.getErrorCode()); }<p>6.你认为什么是事务?访问并可能更新数据库中各种数据项的一个程序执行单元。事务通常由高级数据库操纵语言或编程语言书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句来界定。事务由事务开始和事务结束之间执行的全体操作组成。7.jdbc中更新语句和查询语句的不同之处(相对于数据库而言)√ 更新只会对有更新影响的记录操作,查询是遍历。<p>8.何为java 中的多态?多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 9.数据库的中的表进行结构的修改,如删除一个字段,修改一个字段的类型等等该用什么语句√ alter table: 比如删除a表中的b列字段 alter table a drop column b 新增字段:<p>ALTER TABLE [表名] ADD [字段] 删除字段:<p>ALTER TABLE [表名] DROP COLUMN [字段名] 修改字段:<p>ALTER TABLE [表名] ALTER COLUMN [字段]<p>10简单介绍一下你所学习过的java ee所有技术(英文) √ 11please list some technology in java ee development? √<p>we can use JDBC to persist Object into DataBase。JDBC is made up by some standard interfaces which made by SUN. Spring is a lightweight container, with wrappers that make it easy to use many different services and frameworks. Lightweight containers accept any JavaBean, instead of specific types of components.<p>Hibernate is a solution for object relational mapping and a persistence management solution or persistent layer.<p>Struts is an architecture based on the Model, View, Controller architecture. Essentially the idea is that any web application should be broken into 3 fundamental portions. Model loosely meaning database, View meaning jsp's and what the user will see, and controller meaning the business logic or brains behind the app. If what I said makes no sense to you, then stick to standard jsp scripting and servlets. Oop,uml,sessionbean,entitybean, 图书借阅设计<p>针对图书馆管理系统的需求,设计如下面所示的数据项和数据结构: 表1:书籍基本信住<p>包括的数据项有:索书号、图书名称、作者、出版社、出版日期、书价、ISBN、备注信息等。 表2:读者信息基本信息<p>包括的数据项有:读者编号、学号、姓名、性别、年龄、学院、专业、籍贯、读者类别、最大借阅数、已借阅数、可借阅数、有效日期、读者备注等。 表3:借书基本信息<p>包括的数据项有:索书号、借书日、应还日、续借次数、读者编号等。 表4:还书基本信息<p>包括的数据项有:索书号、还书日、逾期天数、逾期罚款、续借日、读者编号等。 表4:管理员基本信息:包括的数据项有:管理ID、管理员帐号、管理密码等。 一、OOP。 二、表、数据库 三、public\\private\\prodeo 四、EJB,session Bean,entityBean<p>五、借书系统设计。(admin:engineer可以借3本\\manger可以借5本),最大借期:30天<p>文思创新面试题:<p>1、 JSP的内置对象及作用。<p>2、 给一个数据库表,用JDBC连接Oracle数据库并向数据库中插入数据。 3、 写一个简单单例例子。 4、 Byte b=”A” System.out.println (“1=”+b)<p>Silence<p>- 15 -<p>System.out.println (“2=”+(byte)b) System.out.println (“3=”(char)b) 分别写出三个输出结果。<p>5、 在Unix下建一个目录,分配权限。 6、 Final,finally,finalice的区别。<p>复试时让写一个:每隔10秒钟打印一个“Helloworld”:让描述一下自己最熟悉的项目。 Hibernate里的事务是自动提交的还是手动提交。 地址:南京市雨花区阅城大道6号南京软件外包园5楼<p>深圳四四达融和<p>问答题<p>1.final,finalise,finally区别?<p>2.override,overload区别?overloaded的方法能否改变返回值? 3叙述 M-V-C 程序题<p>1.写一个单例模式<p>2.设计4个线程,其中2个对num进行加操作,另两个对num进行减操作<p>3.给你个表A,运用JDBC进行表查询,并将结果以ID排序降序,用户名user,密码 user 在 面试的时候 问了<p>session的问题 :session超时 有那些 方法 ,(在 web.xml中配置 ;还有 在 程序中写超时代码,详细细节自己 看书)<p>jsp 的 问题 : 在 jsp中定义变量和代码块。在 servlet中 处于什么位置; 么<p>jsp与servlet的异同点,<p>软件开发过程中最重要的部分,(至少要说出开发流程)<p>有时自己都不知道说的是真是假,但有一点 ,在技术问题上,真的不会,不要乱说,诚实一点,但要解释为什<p>自己面试感想:<p>新电面试题<p>一.技术面试<p>1.描述struts的工作流程。<p>流程:client-->总控ActionServlet 总控调以下操作: -->form收集数据<p>-->action调javbean处理业务(调ejb,DAO...) -->转向相应的jsp jsp从form中取得数据显示<p>(答:当用户有请求的时候,如果有ActionForm,则会创建该对象,并根据JavaBean的规范实例化,根据struts-cofig.xml中的配置,调用对应的Action,然后根据Action或Actions里面具体方法的返回值,转向相应的页面。)<p>struts是基于MVC框架的,它重点在C这个部分。是一些Servlet的封装。<p>2.谈谈对Hibernate的理解,以及在实际项目中如何应用?(结合自己的项目) 答: 3.如何使用JDBC与数据库进行操作? 答:<p>4.提出一个场景,要求当场写出一段代码?(如一条SQL语句) 答: 5.谈谈对项目的认识?你认为一个项目是怎样进行的? 答: 6.说说String和StringBuffer的区别?<p>答:String的长度是不可变的;<p>StringBuffer的长度是可变的,如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法;线程安全; StringBuilder是从 JDK 5 开始,为StringBuffer该类补充了一个单个线程使用的等价类;通常应该优先使用 StringBuilder 类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快。<p>7.如果一个项目要做两年,你愿意做两年的coding吗? 答:<p>Silence<p>- 16 -<p>8. 谈下ip计费系统的叙述? 答: 9. jsp与servlet的区分?<p>答:Servlet和JSP都是基于java语言上的动态网页技术,Servlet程序其实就是java程序,只不过它所使用的类库为JAVA Servlet API,用于编写服务器端的程序.Servlet继承了Java语言所具有的优点----跨平台,安全性,易开发.但是,Servlet的页面现实和业务逻辑没有分离,使其编写难度较大.<p>为此,sun公司退出了一种新的动态网页技术---JSP.jsp是在传统的HTML页面中加入java程序,片段和jsp标记构成.这样,就可以将页面表示层和业务逻辑层进行分离.将页面表示层和业务逻辑层分离的好处是:Web开发人员可以使用HTML来设计页面的显示部分,而程序开发人员可以使用jsp指令和java程序片段来实现业务逻辑功能. Servlet和jsp作为J2EE开发平台的一部分,它们最大的好处就是跨平台性,可实现一次编写,处处运行. 10.线程有哪些方法?(线程是怎么实现的?)<p>答:多线程有两种实现方法,分别是继承Thread类与实现Runnable接口; 11.线程的同步如何实现?<p>答:同步的实现方面有两种,分别是synchronized,wait与notify 12.EJB有哪些Bean?作用分别是什么?<p>13. String类是怎么取字符长度的?数组又是怎么取长度的?<p>14. 3个常见异常?以及异常的2种实现方式?异常里finally语句的用处? 15.接口与抽象类的关系?区别?<p>答:抽象类与接口都用于抽象,但是抽象类(JAVA中)可以有自己的部分实现,而接口则完全是一个标识(同时有<p>多重继承的功能)。成员方法中包含抽象方法的类被叫做抽象类(abstract class);不能创建abstract 类的实例,然而可以创建一个引用变量,其类型是一个抽象类,并让它指向具体子类的一个实例;不能有抽象构造函数或抽象静态方法;Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类。 接口(interface)是抽象类的变体,在接口中,所有方法都是抽象的;多继承性可通过实现这样的接口而获得;接口只可以定义static final成员变量;当类实现特殊接口时,它定义所有这种接口的方法;允许使用接口名作为引用变量的类型。<p>16.你用过Taglib里的哪几种标签? 答: 17.解释下xml的解析,在哪些地方用到的?<p>答:SAX和DOM 两种 Java里面用的是JDOM。<p>○ 解析方式有:<p>⑴ DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用<p>的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问; ⑵ SAX:不同于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装<p>载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问。 ○ 定义方式:DTD(文档类型定义)和Schema。<p>18. JNDI是什么?J2EE是什么?J2EE涉及到哪些规范?<p>答:◆JNDI是java命名和目录接口服务;<p>◆J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。同时也是一个框架,包括JDBC、<p>JNDI、RMI、EJB等技术。<p>◆包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。 19.switch语句的参数?<p>答:整型兼容的 int char byte short 20.EJB容器的作用? 答: 21.你眼中的spring?答: 22.说说面向对象?答:<p>23.Hibernate分页怎么实现的?答:<p>注意:技术性问题一般以个人的简历为指导,一般会以简历上的技术特长和项目经验两方面作为参考提出问题。在技术特长里写到的技术以及熟练程度务必真实准确,如有虚假的情况,可能会很尴尬。自己应对自己的技术水平做到心中有数。 二.人事面试 1.你对新电了解吗?<p>Silence<p>- 17 -<p>2.谈谈你以前的工作? 3.你为什么要离开以前的公司? 4.你认为软件公司的薪水大概是多少?<p>5.你希望的的薪水是多少?根据你的情况,我们提供的薪水可能与你的预期有一定的差距,你是否愿意接受? 6. 为什么来苏州?对苏州的看法?园区的公积金制度的了解? (在个人工资中扣22%,总共交44.2%,公司帮交22.2%) 回首往事,写几件印象深切的事(英语,200字,30分钟)<p>中远面试题<p>1、面向对象的三个基本特征 2、方法重载和方法重写的概念和区别 3、接口和内部类、抽象类的特性 4、文件读写的基本类<p>**5、串行化的注意事项以及如何实现串行化<p>6、线程的基本概念、线程的基本状态以及状态之间的关系 7、线程的同步、如何实现线程的同步 8、几种常用的数据结构及内部实现原理。 9、Socket通信(TCP、UDP区别及Java实现方式) **10、Java的事件委托机制和垃圾回收机制 11、JDBC调用数据库的基本步骤 **12、解析XML文件的几种方式和区别 13、Java四种基本权限的定义 14、Java的国际化 二、JSP<p>1、至少要能说出7个隐含对象以及他们的区别 ** 2、forward 和redirect的区别 3、JSP的常用指令 三、servlet<p>1、什么情况下调用doGet()和doPost()? 2、servlet的init()方法和service()方法的区别 3、servlet的生命周期<p>4、如何现实servlet的单线程模式 5、servlet的配置 6、四种会话跟踪技术 四、数据库<p>1、存储过程的编写 2、基本的SQL语句<p>千度软件<p>1、Spring基本框架(面试会让你基本谈谈)。 2、Swing的容器, 3、抽象类与接口的区别<p>4、Hibernate配置文件中属性与表中列的对应关系 如属性中String在库表中是什么? 5、Hibernate比JDBC有什么优点。 6、为什么用Struts,有什么优点? 7、写了一个工厂模式的列子。 8、Hashtable与Hashmap的区别 答:答案见文思创新笔试题第六题。<p>9、父子类的构造方法中各写了一个打印语句,另外父类中用静态方法写了打印语句,然后调用子类方法,然后看看打印顺序。<p>10、强制类型转换。int类型数据除以0会出现什么后果。<p>Silence<p>- 18 -<p>答:ArithmeticException(算术异常)<p>11、session中load()方法和get()方法有什么区别?(指的是Hibernate用到的)<p>三、江苏大唐<p>1.servlet的生命周期 2.EJB和javaBean的区别。<p>3.线程的状态有哪几个,分别是什么? 4.举出5个运行时异常。<p>5.JDBC如何连接数据库,若频繁连接,你怎么做优化。 6.如何对用户输入的信息进行验证。 7.使用过什么样的标签。 8.如何在页面上清空一个session.<p>四、江苏融电金融支付系统<p>1、抽象类与接口区别; 2、Vector与Arraylist区别; 3、Collector与Collection?<p>4、无状的Http协议变如何保持有状的? 5、用JAVA写出100-500的基数; 6、JSP的知识; 7、EJB的知识; 8、Framework的知识<p>五、陈开面试<p>1.实现多线程的几种方法 2.Java中的基本数据类型 3.Jsp的内置对象及其作用<p>4.Javascript实现在一个页面上弹出一个窗口 5.Javascript实现关闭浏览器窗口 6.如何判断session超时<p>7.String类equals方法和 == 的区别<p>8.集合框架中删除一个基本数据类型和String时由于其equals方法已经被覆盖所以可以直接删除值相等的对象。 9.写两个线程分别打印出两句话,一个线程每隔3秒打印一句,一个线程每个1秒打印一句。 10.对一个数组进行排序。<p>11.查出一个表中的第10到第20条数据 12.多表链接查询 13.常用的Unix命令<p>华为笔试题<p>1.请你分别画出OSI的七层网络结构图和TCP/IP的五层结构图。<p>2.请你详细地解释一下IP协议的定义,在哪个层上面?主要有什么作用?TCP与UDP呢 ? 3.请问交换机和路由器各自的实现原理是什么?分别在哪个层次上面实现的? 4.请问C++的类和C里面的struct有什么区别? 5.请讲一讲析构函数和虚函数的用法和作用。<p>6.全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的 ?<p>7.8086是多少位的系统?在数据总线上是怎么实现的?<p>联想笔试题<p>Silence<p>- 19 -<p>1.设计函数 int atoi(char *s)。<p>2.int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 输出是多少? 3.解释局部变量、全局变量和静态变量的含义。 4.解释堆和栈的区别。<p>5.论述含参数的宏与函数的优缺点。<p> 普天C++笔试题<p>1.实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数。 2.写一个函数,将其中的\都转换成4个空格。<p>3.Windows程序的入口是哪里?写出Windows消息机制的流程。 4.如何定义和实现一个类的成员函数为回调函数?<p>5.C++里面是不是所有的动作都是main()引起的?如果不是,请举例。 6.C++里面如何声明const void f(void)函数为C程序中的库函数? 7.下列哪两个是等同的 int b;<p>A const int* a = &b; B const* int a = &b; C const int* const a = &b; D int const* const a = &b;<p>8.内联函数在编译时是否做参数类型检查? void g(base & b){ b.play; }<p>void main(){ son s; g(s); return; }<p>我所遇到的面试题如下: 1、如何理解MVC模式 2、怎样度量软件的工作量 3、黑盒测试的目的 4、解释线程与进程的区别 5、解释对象和类的区别 6、解释什么是电子商务 7、什么是中间件<p>8、用软件工程和java来叙述购物车(shopping cart)系统实现 9、瀑布模型是什么<p>10、如何理解原型法与瀑布模型 11、简述浅克隆和深克隆<p>12、文件系统的几个类:FileInputStream、FileOutputStream、FileReader、FileWriter的区别 13、写出生产者消费者模型的实现<p>14、关于Thread多线程的两种实现(选择题) 15、区分Java中的值传递和引用传递(选择题) 16、down casting与up casting的区别<p>名词解释: 1,对象,类; 2,电子商务:<p>电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各<p>Silence<p>- 20 -<p>种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。 3,中间件:<p>中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。<p>在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。<p>分类:数据访问中间件,远程调用中间件,消息中间件,交易中间件,对象中间件。 4,线程和进程<p>5,如何度量软件的工作量? 6,如何理解MVC模式? 简答题:<p>1,题目给你一个关于购物车的功能描述,让你结合软件工程和java语言的知识,描述该如何实现? 2,让你描述,瀑布模型和快速原型法,并做对比?<p>前面有关于数据库的知识,和网络拓扑结构选择的考题,因我了解不多,记不清了。 有一个选择题是关于对象之间的消息发送概念的<p>还有一个是关于模块间的设计原则的:高内聚,低耦合。 操作系统<p>1.死锁的产生情况<p>2.有5个进程,当有一个进程处于运行状态,处于就绪状态的有几个? A 0 B 1 C 4 D 5<p>3.什么是进程和线程?两者的区别。 Sql<p>1.什么是主键?主键可以为Null吗?可以重复吗?<p>2.写一条插入语句。表PERSON,字段NAME,AGE,TELEPHONE,要插入记录”zhang”,”24”,”12345678”. dept<p>deptno,dname,dloc emp<p>empno,ename,salary,deptno<p>a.部门号=’软件工程部’的员工姓名,薪水<p>4.表同上,查询各部门的部门号,最高薪水,最低薪水 5.表同上,查询部门号按降序,薪水按升序的员工姓名,薪水 面向对象<p>1.什么叫面向对象? 2.面向对象是为了解决 A 重用性<p>3.对象和类的区别 软件工程<p>1.CMMI是软件开发的一项技术。(判断)<p>2.UML是一种建模语言,它是用于<p>Silence<p>- 21 -<p>insert into person values(“zhang”,”24”,”12345678”) 3.创建表<p>A 基于瀑布模型的结构化 B 需求动态定义的原型化 C 对象的面向对象 D 数据的数据流开发<p>3.耦合又强到弱顺序为<p>A 内容耦合,公共耦合,控制耦合,数据耦合 4.软件工程的起源源自 A 软件技术的发展 B 软件危机 C 其他学科的发展<p>5.软件开发的流程<p>A 总体设计,详细设计,调试测试 名词解释<p>CPU,HTML,HTTP,OA,OLE,Adapter,OOP,IDE,Client/Server,MIS 时光软件 java面试基础:<p>1,网络7层协议,tcp/ip4 层协议。 2,java面向对象对4大特点。<p>3,名词解释:container,w3c,map,JMS,domain 4,简答题:<p>error和exception的相同和异同点。 public,private,protected访问权限 数据库连接池的工作机制<p>jsp和servlet的相同,不同点和联系,并说明他们在mvc模式中对应那层 java如何访问c++?这个答案是xml application.具体上网查。 web service的描述语言是什么?答案是wsdl,具体上网查。 以http://开头的安全协议是什么? 版本控制工具有哪些? 互联网提供那些服务? 只记得这些了。 j2ee面试题:<p>1,前面的选择题,很多牵涉到java中参数传递的特点,这个考点基本都和String这个类结合到一块考了。 还涉及到了,spring ,struts,hibernate等,但考的都很基础。 2,编程题:<p>a,关于oracle中存储过程的,用到了其中的循环。<p>b,1到10的10个整数,首尾相连,从1开始,每隔2个数字取1个数字,按顺序打印出这些数字,不能重复。 3,论述:<p>你对mvc的理解,mvc有什么优缺点?结合struts,说明在一个web应用如何去使用?<p>然后给出了jsp ,servlet ,javabeans,标签,ejb等一些组件,让你说出他们分别对应mvc模式的哪些层?<p>这是某公司的一道java笔试题,题目内容如下:<p>写一个java程序,实现对一个二维数组按指定的列集进行排序?要求实现类似sql中order by的功能,移动时,整行移动,不能打乱整行顺序。<p>可将二维数组想象成数据库里的一个表记录集,然后按指定的列集进行排序,即order by col1,col2。 //a为二维数组,sortCols是要按哪几列排序,如0,2,以逗号分隔,升序排。 public void sortIntArrs(int[][] a,String sortCols)<p>Silence<p>- 22 -<p>{ }<p>以下是我回答的程序: 代码<p>public class MyArray<p>{ public static void main(String[] args) {<p>int array[][] = new int[][] {<p>{ 12, 34, 68, 32, 9, 12, 545 }, { 34, 72, 82, 57, 56, 0, 213 }, { 12, 34, 68, 32, 21, 945, 23 }, { 91, 10, 3, 2354, 73, 34, 18 }, { 12, 83, 189, 26, 27, 98, 33 }, { 47, 23, 889, 24, 899, 23, 657 }, { 12, 34, 68, 343, 878, 235, 768 }, { 12, 34, 98, 4, 56, 78, 12, 546 },<p>{ 26, 78, 2365, 78, 34, 256, 873 } };// 要排序的数组 int co[] = new int[]<p>{ 0, 1, 2, 3, 4 };// 指定进行排序的列索引及排序顺序 MyArray arraylist = new MyArray(); arraylist.sortIntArrs(array, co); }<p>public void sortIntArrs(int[][] a, int[] co) {<p>for (int i = 0; i < a.length - 1; i++) {<p>for (int j = i + 1; j < a.length; j++) {<p>sort(a, co, i, j, 0); } }<p>for (int m = 0; m < a.length; m++) {<p>for (int n = 0; n < a[m].length; n++) {<p>System.out.print(a[m][n] + \ }<p>System.out.println(); } }<p>public void sort(int[][] a, int[] co, int i, int j, int co_index) {<p>if (co_index < co.length) {<p>if (a[i][co[co_index]] > a[j][co[co_index]]) {<p>Silence<p>- 23 -<p>int aa[] = a[i]; a[i] = a[j]; a[j] = aa;<p>} else if (a[i][co[co_index]] == a[j][co[co_index]]) {<p>sort(a, co, i, j, co_index + 1); } } else return; } }<p>金山JAVA笔试题(转自白云黄鹤bbs) ( 发表时间:2004-11-25 23:13:34 ) 楼主<p>本人报的是J2EE工程师,昨天笔试了java题目,后来晚上参加最后的面试,本来觉得自己蛮 有希望的,可是面试官说只在这个方面(J2EE)招1-2名<p>而且我自己做的项目并没有太出众的地方,当时我就觉得挂了,最后还是无缘金山 把昨天的题目和面试过程说说吧,呵呵,供大家参考 JAVA类的是Java基础和kjava的合卷,我只做了前面的<p>一共是7个题目,4个选择题,一个问答题,一个读程题,一个编程题 第一个题目是考String的用法: 选出用法错误的:<p>a: Stirng a =\"Gone With Wind\"; String t= \"Wind\"; String m; m=a-t;<p>B: Stirng a =\"Gone With Wind\"; String m ; m=a[3]+\"one\";<p>C: Stirng a =\"Gone With Wind\"; Sting m;<p>m=a.toUpperCase(); D: 不记得了<p>第2题考的是变量赋值用法: 选出能正确赋值的: public class A { private int a;<p>public void change(int m) { return m; } }<p>public class B extend A{ public int b;<p>public static void main() { A aa = new A(); B bb = new B(); int k; //px } }<p>在px处可以正确赋值的有:<p>Silence<p>- 24 -<p>A k= m; B k=b; C k=aa.a; D k=bb.change(30); E k=bb.a 第3题是考位运算的 第4题考的是垃圾回收的 具体的选项不记得了<p>5.问答题: 实现线程有两种用法,分别为: ____________和____________ 他们之间有什么区别 6.读程题: class testA { public testA(){ a1(); }<p>public void a1() {<p>System.out.println(\"A-a1\"); } }<p>public class testB extends testA{ int bb=0; public testB() { bb=1000; }<p>public void a1() {<p>System.out.println(\"bb is\"+bb); System.out.println(\"B-a1\"); }<p>public static void main(String[] args) { new testB(); } }<p>c:>java testB 的结果是: 7.编程题<p>一个short型数组, 另有一个byte型数组,存储了若干short型的数,存放时short型数的低位在前, 那么写一段程序,将byte数组转换为short数组<p>(原题的标准表述不记得了,大致就是这个意思,我觉得这个有点意思,我觉得转换时应该 考虑当byte为负数的时候)<p>public short[] ConvertToShort(byte[] inputData) { //补全代码 }<p>群硕笔试题<p>群硕的笔试在语言方面主要是Java和C++,夹了一道C#题,趁记忆犹新的时候记下来<p>一、给了一棵二叉树的前序遍历和中序遍历,要求写出后序遍历。<p>看一下数据结构就行了,很easy。提示:前序遍历的第一个节点为根结点,在中序遍历中根结点的左边节点是左子树,右边节点是右子树,如此递归。<p>二、什么是物理内存和虚拟内存,OS中为什么要使用虚拟内存? 看OS的书。<p>三、解释一下C#中的“delegate”。<p>原先不清楚的,然后在技术面试的时候问了一下面试官,原来类似于一个队列,队列中存的是函数指针(托管函数),<p>Silence<p>- 25 -<p>运行时队列中的函数会在一个线程中被依次执行。 四、与子程序传递参数有哪些方法?<p>汇编题,我想起来三个:参数压栈、参数存寄存器、参数存数据段。<p>五、解释一下Java中的String和StringBuffer,什么时候需要使用StringBuffer?<p>核心是String对象是不变对象,连接、取子串等操作会生成新的对象,旧对象可能会被回收。StringBuufer则是可变对象,上述操作将在原对象上进行。<p>六、Java中哪些容器的默认布局器(layout)是BorderLayout? 这个不是那得很准,就写了JFrame及其子类,Frame及其子类。 七、一个C++的函数:<p>int operation(int numberA,int numberB){ return numberA + numberB; }<p>然后声明了三个变量: int a = 2;<p>int result1 = operation(5, a++); int result2 = operation(5+a, ++a); 问result1和result2的值。<p>原先以为考得是传值、传引用的问题,结果仔细一看考得是a++和++a的问题,这就简单了。 result1 = 7, result2 = 12<p>八、如果父类的析构函数没有声明为虚函数的话在父类的指针上调用析构函数会有什么后果? 屏蔽多态,子类申请的资源将不被释放。 九、定义了一个类: class Something{ pulic: Something(); void setValue(int val){ value = val; } private: int value; }<p>以及一个函数:<p>void doSomething(int val){<p>Something* sth = new Something(); // Line 1 sth->setValue(val); // Line 2 }<p>问Line 2如果是doSomething()的最后一行的话会有什问题? doSomething执行完后sth没有被销毁,内存泄漏。 十、写一个程序将输入的16进制转为10进制。 基础<p>十一、设计一个微波炉的控制程序(OO)。<p>这道题有点意思,我主要用Observer模式设计了一个定时器,然后把微波炉烹饪的对象抽象为Cookable。 十二、逻辑题,一列火车以15 mph的速度从北京开往上海,另一列火车以20 mph的速度从上海开往北京,一只鸟(比较笨)速度25 mph,在两列火车之间来回飞,相遇即折回。问到两列火车相遇这只笨鸟一共飞了多远? 很简单,因为鸟一直在飞,所以一共飞了s/(15 + 20),s为上海到北京之间的距离,那么它一共飞了s/(15 + 20) * 25 mile。 12道题,除了那道C#题,其它觉得没多少地方能扣我分了,当天晚上就没睡好,很兴奋。果然第二天上午就打电话来让我去面试,效率真的很高,然后就果然顺利拿到了offer<p>一、单选择题(每小题2分)<p>1、下列哪些关键字既能够被用于局部变量的修饰,也可以用做类变量的修饰(A)<p>Silence<p>- 26 -<p>A. public B. transient C. static D. finally<p>2、设 float x = 1 , y = 2 , z = 3,执行表达式 y+=z--/++x 后,x 、y 、z的值分别是( B )。 A. 2 ,3,2 B. 2 ,3.5 ,2 C. 2 ,3.5 ,3 D. 2 ,3,3 3. int x=4; (A)<p>System.out.println(\"value is \" +((x>4)?99.9:9)); A、9 B、9.0 C、99.9 D、99<p>4. MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量(D) A、public int MAX_LENGTH=100; B、final int MAX_LENGTH=100;<p>C、final public int MAX_LENGTH=100; D、public final int MAX_LENGTH=100. 5、不是类及类成员的访问控制符的是( C)。<p>(A)public (B)private (C)static (D)protected<p>6、关于被私有访问控制符protect修饰的成员变量,以下说法正确的是(C ) (A) 可以被两种类访问和引用:该类本身、该类的所有子类<p>(B)可被三种类引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 (C)只能被该类自身所访问和修改 (D)只能被同一个包中的类访问 7、关于垃圾收集的哪些叙述是对的(B)<p>A、程序开发者必须自己创建一个线程进行内存释放的工作。 B、垃圾收集将检查并释放不再使用的内存。<p>C、垃圾收集允许程序开发者明确指定并立即释放该内存。 D、垃圾收集能够在期望的时间释放被java对象使用的内存 8、下列程序段执行后的结果是( A )。 String s=new String(\"abcdefg\"); for(int i=0;i<s.length();i+=2){ System.out.print(s.charAt(i)); }<p>A) acegB) ACEGC) abcdefgD) abcd<p>9. 以下那个方法声明能够被加入到Child类中,编译正确?(B ) public class Parent {<p>public int addValue( int a, int b) { return a+b; } }<p>class Child extends Parent { }<p>A.int addValue( int a, int b ){// do something...} B.public void addValue (){// do something...}<p>C.public void addValue( int b, int a ){// do something...}<p>D. public int addValue( int a, int b )throws MyException {//do something...} 10、给出如下代码: class Test{ private int m;<p>public static void fun() { // some code... } }<p>如何使成员变量m 被函数fun()直接访问( C )<p>(A)将private int m 改为protected int m (B)将private int m 改为 public int m (C)将private int m 改为 static int m (D)将private int m 改为 int m 11、类Test1定义如下: ①public class Test1{<p>② public float aMethod(float a,float b){ }<p>Silence<p>- 27 -<p>③}<p>将以下哪种方法插入行3是不合法的。( B) (A)public float aMethod(float a, float b,float c){ } (B)public float aMethod(float c,float d){ } (C)public int aMethod(int a, int b){ } (D)private float aMethod(int a,int b,int c){ }<p>12、以命令”java MyTest x y”执行文件MyTest.class后,表达式( A )为真 (A)args[0] = \"x\"(B)args[0] = 'y'<p>(C)args[0] =\"MyTest x y \"(D)args[1]= \"MyTest\"'y' 13. 判断以下Teacher类的main方法的运行结果(B) public class Teacher extends Person { public Teacher () { super(); }<p>public Teacher(int a) { System.out.println (a); } public void func() { System.out.print (\"2, \"); } public static void main(String[] args) { Teacher t1 = new Teacher (); Teacher t2 = new Teacher(3); } }<p>class Person {<p>public Person () { func(); }<p>public void func() { System.out.println(\"1, \"); } } A.1, 1, 3 B.2, 2, 3 C.1, 3 D. 2, 3<p>14. 下面的哪些叙述为真(A )<p>A.equals()方法判定引用值是否指向同一对象。<p>B.= = 操作符判定两个不同的对象的内容和类型是否一致。 C.equals()方法只有在两个对象的内容一致时返回true。<p>D. 类File重写方法equals()在两个不同的对象的内容和类型一致时返回true。 15.请判断下面的代码片段的执行结果:(A) void func(int a, String b, String c) { a = a + 1; b.trim(); c = b; }<p>public static void main(String[] args) { int a = 0;<p>String b = “Hello World”; String c = “OK”; func(a, b, c);<p>System.out.println(“” + a + “, ” + b + “, ” + c); }<p>A.0, Hello World, OK B.1, HelloWorld, HelloWorld C.0, HelloWorld, OK<p>D.1, Hello World, Hello World<p>16、对于以下的方法体,如果TimedOutException直接继承Exception类,那么哪一个方法声明适合以下的方法体代<p>Silence<p>- 28 -<p>码?(B ) {<p>success = connect(); if (success = = 1) { throw new TimedOutException(); } }<p>A.public void method()<p>B.public void method() throws Exception C.public void method() throw TimedOutException D.public throw TimedOutException void method() 17、以下哪项陈述是正确的( E)<p>A.垃圾回收线程的优先级很高,以保证不再使用的内存将被及时回收 B.垃圾收集允许程序开发者明确指定释放哪一个对象 C.垃圾回收机制保证了JAVA程序不会出现内存溢出 D.进入”Dead”状态的线程将被垃圾回收器回收 E.以上都不对<p>18.一个函数定义的返回值是float,它不能在return语句中返回的值的类型是( C ) A. char B. float C. long D. double 19. 以下那些陈述是正确的:(C )<p>A.一旦一个线程被创建,它就立即开始运行。 B.使用start()方法可以使一个线程立即开始运行。<p>C.当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。 D.一个线程可能因为不同的原因停止(cease)并进入就绪状态。 20. 方法resume()负责恢复哪些线程的执行:( ) A.通过调用stop()方法而停止的线程。 B.通过调用sleep()方法而停止运行的线程。 C.通过调用wait()方法而停止运行的线程。 D.通过调用suspend()方法而停止运行的线程。<p>21. 在UML方法中,使用多种类型的图形来帮助进行设计,请问以下哪些图形不是UML的图形类型(C ) A.类图 B.实体关系图 C.序列图 D.活动图<p>二、填空题(每空格2分,共30分)<p>1. ____同步__是线程安全的,也就是说是同步的,而____异步___是线程序不安全的,不是同步的<p>2. 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 final 方法是不能被当前类的子类重新定义的方法。 3. 假设x= 10, y= 20, z= 30; 计算下列表达式的值<p>A) x <10 || x > 10 ____true____________ B) !(x < y + z) || (x + 10 <= 20) ______true_______ C) z-y == x && Math.abs(y-z) != x flase<p>4. Collection的 四种主要接口是 、 、 、<p>5、多线程有两种实现方法,分别是 、 。6、在子类中使用关键字_______做前缀可调用被子类覆盖的父类中的方法。<p>7. 设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 MItra 。 int s = 0 ;<p>for ( int i = 0 ; i < MyIntArray.length ; i + + )<p>if ( i % 2 = = 1 ) s += MyIntArray[i] ;<p>Silence<p>- 29 -<p>System.out.println( s );<p>四、写出下列程序的输出。(每小题5分,共15分) 1、 class Circle { double radius;<p>public void setRadius(double r){ radius=r; }<p>public void show(){ System.out.println(“Circle.radius=”+radius);} }<p>class Coin extends Circle { int value; double radius;<p>public void setValue(int t,double r){ value=t;radius=r; } }<p>public class testHiddenField<p>{ public static void main(String args[]) { Coin co=new Coin(); co.setRadius(2.0); co.setValue(1, 3.5); co.show();<p>System.out.println(“Coin.radius=”+co.radius); } }<p>Circle.radius=3.5 Coin.radius=3.5<p>2. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?为什么? 这个我是猜的:引用传递,没有为什么 哈哈 3. abstract class和interface有什么区别?<p>好象基本没区别,因为C++支持多继承而JAVA不能,所以用extend继承抽象类而用implements实现接口,从而实现多继承<p>六、使用Java语言编写程序。(共7+8分)<p>说明:1,2题中可任选一题,3,4题中可任选一题<p>1、编写一个字符界面的Java Application 程序,求1!+2!+„.10! 。<p>2. 构造一个类来描述屏幕上的一个点,该类的构成包括点的x和y两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对象并对其进行操作。 Public class Test {<p>private int x; private int y; public Test() {<p>this.x=0; this.y=0; }<p>public Test(int a,int b) {<p>this.x=a; this.y=b; }<p>Silence<p>- 30 -<p>public void SetX(int a) { this.x=a; }<p>public void SetY(int a) { This.y=a; }<p>public void Mova(int a,int b)//反方向移动为负值 {<p>this.x+=a; this.y+=b; }<p>public void Show() {<p>System.out.println(“坐标为:(” + this.x + ”,”+ this.y +”)” ); }<p>public static void main( String arge[]) {<p>Test t1=new Test(); Test t2=new Test(2,3); t1.Show(); t2.Show(); t1.Move(1,2); t2.SetX(5); t2.SetY(6); t1.Show(); t2.Show(); } }<p>3、设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资和所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。(回答下列题目)<p>(1). 列出各部门中工资不低于600元的职工的平均工资。 SELECT AVG(月工资) FROM EMP GROUP BY 部门号 WHERE SALARY >=600<p>(2). 请用SQL语句将“销售部”的那些工资数额低于600的职工的工资上调10%。 CREAT VIEW V AT职工表<p>WHERE (部门号==销售部AND 工资<600); UPDATA V SET 工资=工资*1.1<p>4:假设有一个“职工”表,表结构如下: 职工号姓名年龄月工资部门号电话办公室 1张三252000112345101 2李四261500154321102 3王五23900223456201 „.. „. 问题:<p>查询每个部门中月工资最高的“职工号”的SQL查询语句如下:<p>Silence<p>- 31 -<p>SELECT 职工号 FROM 职工 AS A<p>WHERE 月工资 = (SELECT MAX(月工资) FROM 职工 AS B WHERE A.部门号 = B.部门号);<p>(1): 请简要的说明该查询语句对查询效率的影响<p>(2): 对该查询语句进行修改,使它既可以完成相同的功能,又可以提高查询效率。<p>Silence - 32 -<p> <div class="preview-ft"> <div class="preview-title"> <p style="color: red;"><strong>因篇幅问题不能全部显示,请点此查看更多更全内容</strong></p> <div class="model-fold-cover-bd"><a href="https://m.tang5.com/mluvgv/nreogioxaua/" target="_blank"><span>查看全文</span><i class="iconfont icon-chakangengduo"></i></a></div> </div> </div> <script type="text/javascript" src="https://jss.bluu.cn/mobile/detail_left.js"></script> <script type="text/javascript" src="https://jss.bluu.cn/mobile/detail_gg2.js"></script> </div> <div class="ggft_prev"> </div> </div> <script type="text/javascript" src="https://jss.bluu.cn/mobile/detail_foot.js"></script> <script type="text/javascript" src="https://jss.bluu.cn/mobile/share_cebian_gg1.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/mobile/share_cebian_xgyd.js"></script> <script type="text/javascript" src="https://jss.bluu.cn/mobile/share_cebian_gg2.js"></script> <script type="text/javascript" src="https://jss.huatuo6.com/mobile/share_cebian_rmtj.js"></script> <footer class="footer"> Copyright © 2019-<span class="currentYear"></span> 版权所有<br> </footer> <script> var swiper = new Swiper('.i_banner .swiper-container', { pagination: '.i_banner .swiper-pagination', paginationClickable: true, spaceBetween: 30, centeredSlides: true, autoplay: 2500, autoplayDisableOnInteraction: false, loop: true, }); </script> <!--弹窗开始--> <script type="text/javascript"> $(function () { //弹窗2 $('.menu_icon').click(function () { $('.tbox').show(); }) //关闭 $('.close').click(function () { $('.tbox').hide(); }) }) </script> <!--弹窗结束--> <script type="text/javascript" src="https://jss.bluu.cn/mobile/foot_foot.js"></script> <script type="text/javascript"> const currentYear = new Date().getFullYear(); $('.currentYear').html(currentYear) </script> <script type="text/javascript" src="https://jss.huatuo6.com/pc/tj_foot.js"></script> </body> </html>