1、02J2SE高级技术面试题目及答案一、 Oracle题目:1问题oracle数据库是关系型数据库吗?如何存储数据?答案是;oracle以二维表的形式存储数据;2问题分别说明oracle安装过程中输入的 全局数据库名, SID 的作用答案全局数据库名:用于标识局域网上某一个DBMS;SID:用于标识某一台计算机上的某一个数据库实例;3问题什么是sql*plus?答案sql*plus是oracle允许输入和执行sql语句及plsql块的一个交互工具,它能够运行脚本语言、生成报表、启动, 停止oracle,执行sql;4问题请说明主键与唯一性约束的区别答案可以向表附加多个唯一约束,但只能向表附加一个
2、主键。 唯一性约束允许空值;主键约束不允许为空值。5问题CHAR 与 VARCHAR2 的区别? 及何时用CHAR类型,何时用VARCHAR2类型?答案CHAR:定长; CHAR读取效果较高;当要存储的数据长度固定时,如身份证号;VARCHAR2:可变长度;当要存储的数据长度不固定时,如姓名;6问题字段非空限定,所用关键字?答案not null7问题添加语句的基本格式?修改语句的基本格式?删除语句的基本格式?答案insert into 表名 (字段列表) values (值列表)update 表名 set 字段1 = 值 , 字段2 = 值2 . where 条件delete from 表名
3、where 条件8问题查询语句的基本格式?答案select 字段列表 from 表名 where 条件 order by 字段 9问题Sql语句中的连接符是?Sql语句中并且关系条件关键字是?Sql语句中或者关系条件关键字是?答案|andor10问题有两张 表A,表B 都有字段sid,按sid字段内连接如何实现?答案SELECT * FROM A INNER JOIN B ON A.SID = B.SID 或SELECT * FROM A,BWHERE A.SID = B.SID11问题有两张 表A,表B 都有字段sid,按sid字段实现左外连接?答案SELECT *FROM A LEFT J
4、OIN B ON A.sid = B.sid或SELECT *FROM A , B Where A.sid = B.sid(+)12问题有两张 表A,表B 都有字段sid,按sid字段实现右外连接?答案SELECT *FROM A RIGHT JOIN B ON A.sid = B.sid或SELECT *FROM A , B Where A.sid(+) = B.sid13问题nvl() 函数的基本格式及作用?decode() 函数的基本格式及作用?答案nvl(field,v1)当field为空时,返回v1,否则返回原值decode(条件,值1,翻译值1,值2,翻译值2,.值n,翻译值n,缺
5、省值) 相当于 else if 的多分支条件语句14问题表示oracle中的系统函数的语句是?to_date()函数的作用? 答案sysdateto_date(日期值或字段, 格式字符串) 15问题说出至少四个聚合函数 及作用答案count(field) /记录数avg(field) /平均值min(field) /最小值max(field) /最大值sum(field) /总和16问题分组查询格式答案Select 分组字段或聚合函数from 表 group by 分组字段 having 条件 order by 字段17问题什么是事物控制?用于事物控制的语句有哪些?分别是什么?答案保证事务的整
6、体成功或失败,称为事务控制;用于事物控制的语句有两种;COMMIT - 提交并结束事务处理;ROLLBACK - 撤销事务中已完成的工作18问题模糊查询通配符有哪些?区别是什么?答案通配符是%与_. %:表示任意0个或多个字符。可匹配任意类型和长度的字符._:表示任意单个字符。匹配单个任意字符.19问题如何把查询结果降序排列?答案order by 字段 desc二、 异常处理题目:20问题final,finally,finalize的区别是什么?答案final用于声明属性,方法和类,分别表示属性不可改变,方法不可被覆盖,类不可被继承;finally是异常处理语句结构的一部分,表示总是执行;fi
7、nalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收21问题异常处理的机制有几种?分别是什么?答案异常处理机制有两种;1、 捕获异常(try catch finally)2、声明抛出异常(throws)22问题error和exception有什么区别?答案error 表示恢复不是不可能,但很困难的情况下的一种严重问题比如说虚拟机内部错误,不可能指望程序处理这样的情况exception表示一种程序实现或设计问题。也就是说,如果程序运行正常,从不发生的情况23问题throw、throws关键字区别?答案throw关键字是
8、用于方法体内部,用来抛出一个Throwable类型的异常。throws在方法头部声明方法可能抛出的异常类型三、 JDBC数据库连接24问题请描述JDBC数据库访问过程?答案1、 注册和加载数据库驱动程序2、 建立与数据库的连接通道 3、 构造SQL语句 (注:3,4可合为一步)4、 执行SQL语句(返回结果集或影响条数) 5、 关闭数据库连接资源 25问题JDBC执行事务时,可能需要调用到Connection的哪些方法 答案setAutoCommit(),commit(),rollback()26问题PreparedStatement和Statement区别?答案1. 数据库会Prepared
9、Statement语句进行预编译,下次执行相同的sql语句时,数据库端不会再进行预编译了,而直接用数据库的缓冲区,提高数据访问的效率.2. 代码的可读性和可维护性3. 最重要的一点是极大地提高了安全性. 能有效防止Sql注入攻击.四、 Swing高级应用27问题要实现表格需要用到哪个swing组件类?答案Jtable类 28问题给表格添加数据需要用到什么类?答案DefaultTableModel 类29问题如果未选中表格的某一行而调用getSelectedRow(),将返回什么值?答案-1五、 IO流编程题目30问题Java采用的是哪种编码?每个字符占几个字节?答案Java采用unicode编
10、码,每个字符占2个字节31问题数据源头有哪些?答案文件,键盘,网络流,字符串(内存)等 (可提示一个)32问题InputStream类中的read方法返回值类型是什么?当读到文件末尾返回值是什么?答案int 类型,-1 表示读到文件末尾33问题File类中用来判断当前表示的是一个标准文件的方法是什么?答案isFile()34问题FileInputStream是FilterInputStream(高级过滤流)的子类吗?或这样问: FileInputStream是过滤流吗?过滤流有哪些?答案不是,FilterInputStream的子类有BufferedInputStream,PushbackIn
11、putStream,DateInputStream35问题流类按层次分可以分为几种?分别是什么?高级两种;底层流:包含以字节的形式读写的方法高层过滤器流:更方便的方法;用于读写高层信息36问题字符流与字节流的区别是什么?答案字符流是按字符读写;一个中文是一个字符;字节流是按字节读写;一个中文是两个字节;37问题字符输出流类的父类是什么?是常规类,抽象类;还是接口?答案Writer 是个抽象类38问题要串行化某些类的对象,这些类就必须实现的接口是什么?答案实现Serializable接口 39问题字符流中读取一行记录用readLine()方法的返回值是什么类型?那这个方法需要什么类的实例对象来调
12、用答案返回值类型String;BufferedReader 类的实例对象来调用40问题PrintWriter类的关键构造方法参数有哪些?答案OutputStream,String ,Writer,File六、 网络编程题目41问题Java中网络通讯的类属在什么包下面?题目.*;42问题在网络通信中,Socket使用什么协议进行通讯答案TCP协议43问题可以通过哪个类得到本地的IP地址?答案InetAddress 类44问题UPD与TCP区别?答案1.基于UPD与基于TCP相比,基于UDP的通信传输速度更快;2.但基于UDP的通信不能提供可靠性,即发出的信息接收方不一定收到,发出信息的顺序与接收
13、的顺序不一定相同。七、 多线程编程题目45问题创建线程的方式有几种?分别是什么?答案创建线程的方式有两种;1.声明一个 Thread 类的子类,并覆盖 run() 方法2.声明一个实现 Runnable 接口的类,并实现 run() 方法46问题多任务处理有哪两种类型?答案基于进程和基于线程47问题线程何时进入死亡状态?答案run() 方法结束48问题Thread类在哪个包下?通过什么方法可以启动线程?答案Thread类在java.lang.*包下面;通过线程的start()方法可以启动线程49问题请简要解释线程同步的概念!答案当两个或多个线程需要访问同一资源时,它们需要以某种顺序来确保该资源
14、某一时刻只能被一个线程使用的方式称为线程同步50问题Java如何实现线程同步?答案1. 方法同步:用 synchronized 修饰方法2. 方法块同步:形式如: synchronized(变量) 注:变量是必需是对象型;51问题请简要叙述多线程的特性答案1、在Java中,一个应用程序可以包含多个线程。每个线程执行特定的任务,并可与其他线程并发执行 2、多线程使系统的空转时间最少,提高CPU利用率3、多线程编程环境用方便的模型隐藏CPU在任务间切换的事实 八、 其它52问题简单描述Java 的反射机制?答案反射(Reflection)是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,并能直接操作程序的内部属性。53问题单例模式(Singleton)的作用答案Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。54问题简要说说DAO模式答案使用数据访问对象(DAO)模式降低 业务层(或表观层) 与数据源层(即数据存储介质)之间的耦合度;55问题简要说说工厂模式答案工厂模式实现对创建对象的封装,即封装了new的过程;利用工厂模式可是做到针对接口(interface)编程56问题什么是VO什么是BO答案VO 即值对象BO 即业务对象
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1