各公司Java面试题汇总★ 表 A 字段 m , n , x , y ,其中 m,n 为 number 类型 ,x 为字符类型, y 为日期类型1 、创建表 A 并且 m 不能重复, n 初始值为 0 , m 、 n 、 y 不能为空2 、修改表 A 把 n 的初始化值改为 13 、查询表 A 中 m 大于 500 并且 y 为前一天的当前时间以前的所有数据4 、查询表 A 中 x 字段共有多少种情况,并输出条数大于 200 的情况的个数5 、查询表 A 中 x 为空并且时间介于当前时间与前一天当前时间的所有数据6 、往表 A 中插入一条数据,令 n 值为 3,x 值为 "xyz",y 值为 2007 年 1 月 1 日 12 点 12 分 12 秒7 、删除表 A 中所有时间为整点的数据8 、表 B 与表 A 有相同的数据结构,怎么样把表 A 中的数据倒入表 B 中9 、数据库的锁,概念,形成原因,你所见过的所有数据库中的锁,锁的解决方案?--------------------------------------------------------------------------------------------------------------------1 、把“ ab ”“ ef ”“ ij ”“ cd ”“ gh ”放到 List 里,然后对此 List 快速排序,并打印结果2 、表 File 中有 2 个字段 file,vcFile,file 为 1 的所相关的 vcFile 的信息,用 jdbc 连接数据库,并打印查询结果的第三条4 、 corba 对象里有一个 void corbaPing() 怎样通过返回的一个空对象判断其状态?5 、 corb 中的 COS 三种实现。
6 、 WTS 的几种实现形 , 文字描述即可,无需写代码7 、纯 java 技术能否实现 jmcp 协议?8 、 struts 的 5 个主要的类并且哪个类为 MVC 中的 C?--------------------------------------------------------------------------------------------------------------------1 Class Test (){ { System.out.println(“b”); } static Test(){ System.out.println(“a”); } public Test(){ System.out.println(“c”); } public String out(){ System.out.println(“111”); } } public class Test1(){ public static void main(String[] args){ System.out.println(out()); } } 问题是1 怎么修改程序让他正确,用尽可能多的方法,并写出执行结果 2 如果只修改 main 函数,能打出 abc 吗? bac 呢?为什么2、写一个单例的例子 3、String str=”WeeciolGmmcc” 分别用 for,while,switch3 种循环写出程序 , 使程序能打印出 WelcomeGmcic ,一个打印语句只能打印出一个字符 4、有员工表 , 字段 id ,name,managerid ,还有个啥字段,记不清楚了,没用到,然后查姓名,领导的姓名,如果没领导的话则显示无 id name managerid 1 张三 李四 2 李四 赵六 3 王五 赵六 4 赵六 5、写一个你最熟悉的 JAVA 规范,详细说明,不要用大量的书面语,要用自己的语言6、一个益智题, 2 个人,一个说实话, 一个说谎话,有一个岔路口, 2 个人分别站在 2 个路口上,让你问 2 个人一样的一个问题,来判断出哪条路通往说谎国,哪个通往实话国 这是必做题,还有一份选做,是有关 HTML CSS 和 javascript 的。
没记住,但不难 这个笔试题只给一个小时的时间,过了时间就会被淘汰 ------------------------------------------------------------------------------------------------------------------★ 1 培训的几大框架 2 三大框架整合 做过的实际开发项目 3 页面开发技术,模块技术 Struts Tiles 4 数据库编程 哪些数据库比较熟悉 重点是多层关联,多表查询 5 Hibernate 的关联配置 一对一,一对多,多对多 接触 Java 多久了,当时为什么选择培训 J2SE 面向对象,接口技术,编程基础 6 设计模式 7 MVC 开发 用过 Spring 的 MVC (集成 Struts1 ) -----------------------------------------------------------------------------------------------------------------------------------------★ 1. 用 java 和 sql server2000 或 oracle 或 mysql 实现 :2.servlet , struts , webwork , struts2 实现均可 用户管理信息 : 主界面要求有姓名 , 密码输入框和两个按扭 " 确定 " 和 " 用户管理 ", 当点击第二个按纽时出来一个对话框包括 : 增加 , 删除 , 修改 3 个按纽 ( 可批量删除,批量删除后,弹出对话框显示被删除的用户名字。
如:被批量删除的用户有 [ 张三,李四,等等 ]), 实现对应的数据库操作 ---------------------------------------------------------------------------------------------------------------------------------------★ 一 .IQ 题 1.63-64=1 怎样移动一位数字使上面等式成立,只能移动数字 2. 根据图形变化填写图形 二、写书 sql 语句 用到了等值连接 三、将数据库中表中重复的数据删除掉,只保留 ID 号最小的那条记录 四、用 hql 语句查出 A 、 B 表中全部的数据,并且删除掉重复的数据 五、 java 基础题 1.final 、 finally 、 finaliz 的区别 2.& 和 && 的区别, == 和 equals 的区别 3. 静态类和内部类的区别 4. 匿名内部类是否可以 extends 其他类,是否可以实现接口 六、写出执行语句 第一个题是怎样调用父类代码 第二个题是内部类的执行语句 --------------------------------------------------------------------------------------------------------------------------------------- ★ 1.String 类可否继承 2.foward sendRedirect 的区别 3.HashTable HashMap 的区别 4. 说一下抽象接口类 5.MySql 数据库连接的 statement 有哪些,以及他们的特点,用法等 6. 线程了解多少 7.Linux 应用如何 ---------------------------------------------------------------------------------------------------------------------------------------★ • 分配一个 5 列 6 行的字符串数组 . • 写出下面这段程序的输出 try { int i=0; int i2=3/i; } catch (ArithmeticException ae){ System. out .println( " 数学计算错误 " ); } catch (Exception e ){ System. out .println( " 通用错误 " ); } finally { System. out .println( " 计算完成 " ); } • 我们希望下面这段程序能顺序打出 0 到 9 十个数字 , 请指出错误 : public class Demo{ ArralList queue= new ArrayList(); int nextID =0; Object lock = new Object(); public static void main(String[] args) { new Demo().start(); } public void start() { new Producer().start(); new Producer().start(); new Consumer().start(); new Consumer().start(); } class Producer implements Runnable{ public void run() { while ( nextID <10) { queue.add( new Integer( nextID ++)); synchronized ( lock ){ try { lock .notifyAll(); } catch (Exception e){ } } try { Thread. sleep (1000); } catch (InterruptedException e){ } } } } class Consumer implements Runnable{ public void run(){ while ( true ){ if (queue.size()==0) { synchronized ( lock ) { try { lock .wait(); } catch (Exception e ){ } } } System. out .println(queue.remove(0)); } } } } • 完成下面的程序 , 把一个 int 值保存到 byte 数组中 ( 高位在前 ). int i=13223; byte[] b=new byte[4]; • 请说明 Map( 映射表 ) 和 Set( 集合 ) 这两种数据结构的异同点 . • 有一个 GBK 编码的文本文件 c:/a.txt(<32k), 请写出一段程序 , 读取它的内容显示在标准输出上 . • 请完成下面的排序算法 public interface Comparable{ //Compare to another instance //@return >0 if this is larger,=0 if equal, <0 if this is smaller. public int compareTo(Object o); } public static void sort(Comparable[] arr ){ ………… } 总结:第三题、第四题没有做出来。
小公司, 2008-07-25 下午 2 点复试 --------------------------------------------------------------------------------------------------------------------------------------- ★1.String s= “ qod hitk 123abc bcd cde ”中间用空格隔开,对其进行排序,组成新的字符串 s= “ 123abc bcd cde hitk qod ” 就是按字付串的首位字母排序 2. 用 arrayList ,或者 vector 实现 queue 3.String s= “ aa 我 123 自中华人民共和国”写一个函数 returnStr ( int maxByte , String s ) 要求按着输入的字节数取出随机给定的字符串,如果字节为单数(取到的正好是半个汉字)就忽略 returnStr ( 1 , s ) 应该为: a returnStr ( 2 , s ) aa returnStr ( 3 , s ) aa returnStr ( 4 , s ) aa 我 returnStr ( 5 , s ) aa 我 1 以此类推。
4.properties 文件读取生成 xml 文件,去除重复属性 ---------------------------------------------------------------------------------------------------------------------------------------★ 1.String s= “ qod hitk 123abc bcd cde ”中间用空格隔开,对其进行排序,组成新的字符串 s= “ 123abc bcd cde hitk qod ” 就是按字付串的首位字母排序 2. 用 arrayList ,或者 vector 实现 queue 3.String s= “ aa 我 123 自中华人民共和国”写一个函数 returnStr ( int maxByte , String s ) 要求按着输入的字节数取出随机给定的字符串,如果字节为单数(取到的正好是半个汉字)就忽略 returnStr ( 1 , s ) 应该为: a returnStr ( 2 , s ) aa returnStr ( 3 , s ) aa returnStr ( 4 , s ) aa 我 returnStr ( 5 , s ) aa 我 1 以此类推。
4.properties 文件读取生成 xml 文件,去除重复属性 ---------------------------------------------------------------------------------------------------------------------------------------★ 1. 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法对象的一个新类可以从现有的类中派生,这个过程称为类继承新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要 2. 封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象 3. 多态性: 多态性是指允许不同类的对象对同一消息作出响应多态性包括参数化多态性和包含多态性多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
4 、什么时候用 assert assertion( 断言 ) 在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制在实现中, assertion 就是在程序中的一条语句,它对一个 boolean 表达式进行检查,一个正确程序必须保证这个 boolean 表达式的值为 true ;如果该值为 false ,说明程序已经处于不正确的状态下,系统将给出警告或退出一般来说, assertion 用于保证程序最基本、关键的正确性 assertion 检查通常在开发和测试时开启为了提高性能,在软件发布后, assertion 检查通常是关闭的 5. 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误 java 编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常 6.List, Set, Map 是否继承自 Collection 接口 ? List , Set 是, Map 不是 7 、 List 、 Map 、 Set 三个接口,存取元素时,各有什么特点? List 以特定次序来持有元素,可有重复元素。
Set 无法拥有重复元素 , 内部排序 Map 保存 key-value 值, value 可多值 8. 多线程有几种实现方法 , 都是什么 ? 同步有几种实现方法 , 都是什么 ? 多线程有两种实现方法,分别是继承 Thread 类与实现 Runnable 接口 同步的实现方面有两种,分别是 synchronized,wait 与 notify --------------------------------------------------------------------------------------------------------------------------------------- ★ hibernate 里面 1 对多的配置 spring 里面构造函数的注入方法:socket 做一个客户端程序,发送文件的实现,用个简单的 main 方法简单实现就可以了 画个类图熟悉东西 ---------------------------------------------------------------------------------------------------------------------------------------★ 编程实现 1 给定一个字符串,将其中的多个空格换成一个空格,如, HelloWorld sfdjkf sdkf 换成 HelloWorld sfdjkf sdkf ,返回这个字符串。
2 判断两个圆是否相交回答问题 3 什么是垃圾回收器?什么时候触发它?怎样能控制它的实用频率? 计算出结果 4 123^321^123= 5 (-455)>>>30= 6 (byte)5+((byte)5&0xFF)= 7 20/8*8= ---------------------------------------------------------------------------------------------------------------------------------------★选择题:(总共 20 道) 1 关于类的描述 2 JAVA 关键字的相关题目 3 JAVA 的垃圾回收机制 4 一个 INT 型数据,让它的值翻倍 5 基本全是问程序的执行结果,想不起来了 (有关于赋值,异常等很多,部份 653 考试题中的选择题) 简答题: 1 struts 中关于共享资源区作用域的问题,以及转发跟重定向的主要区别 2 struts 中 formbean 、 validator 的相关内容 ( 我觉得这个题如果出现似乎应该是在编程题中 ) 3 JSP 中有三种独立的向页面添加代码段的技术,写出其中的两种 4 结合你所做项目中用到的一个框架,谈谈它的特点,利弊,主要结合业务描述 ( 简述 JAVA 的垃圾回收机制优点和原理,并考虑 2 种回收机制 。
有可能在简答中考 ) 编程题 1 写一个 JSP 中关于 error-page 404 错误的配置,让其指向 error404.jsp 的页面,或者描述其配置的原理 2 将一个 int 型数组写到一个 temp.dat 文件中,再从 temp.dat 中读出,并在控制台上逆序打印数组元素 3 帮一个业务操作运营平台写一个用户登录页面 。