设为首页 加入收藏

TOP

实习生java面试题集及详细答案(三)
2014-11-14 08:30:04 来源: 作者: 【 】 浏览:77
Tags:实习生 java 试题集 详细 答案
table继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。
24.Error与Exception有什么区别?
error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。
exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。
25.statement 和preparestatement区别
1)创建时的区别:
Statement stm=con.createStatement();
PreparedStatement pstm=con.prepareStatement(sql);
执行的时候:
stm.execute(sql);
pstm.execute();
2)pstm一旦绑定了SQL,此pstm就不能执行其他的Sql,即只能执行一条SQL命令。
stm可以执行多条SQL命令。
3)对于执行同构的sql(只有值不同,其他结构都相同),用pstm的执行效率比较的高,对于异构的SQL语句,Statement的执行效率要高。
4)当需要外部变量的时候,pstm的执行效率更高.
26.写一个数据库连接类,包括查询及结果存储。
import java.sql.*; //需要加入的包
//类的定义
class DBConnect {
private String con1 = “sun.jdbc.odbc.JdbcOdbcDriver”; //连接SQL所需要的字符串
private String url = “jdbc:odbc:test”;
private String user = “sa”, password = “”; //这里请根据您的数据库用户和密码自行修改
Connection con; //用于连接数据库用的
PreparedStatement ps; //其实用Statement也行,PreparedStatement集成了Statement.
ResultSet rs; //一个集合,可以用于执行SQL命令
//构造函数
DBConnect() {
try {
Class.forName(con1); //Class.forName()用于将一些类加载到JVM
this.Connect(); //函数调用
try {
this.execute();
} catch (SQLException ex) {
System.out.println(ex.toString());
}
} catch (ClassNotFoundException ce) {
System.out.println(ce);
}
}
public void Connect() {
try {
con = DriverManager.getConnection(url, user, password); //做这部之前先把ODBC配置好
if (con != null) {
System.out.println(“Connection Sucessfully!”);
}
} catch (SQLException ex) {
System.out.println(ex.toString());
}
}
public void execute() throws SQLException {
ps = con.prepareStatement(“select *from friends”); //把SQL语句搞给ps
rs = ps.executeQuery(); //这里执行,之后让rs知道信息
while (rs.next()) //这里必须加next(),偏移量移动.
{
System.out.print(rs.getString(2) + “\t”);
System.out.print(rs.getString(3) + “\t”);
System.out.print(rs.getString(4) + “\t”);
System.out.print(rs.getDate(5) + “\t”);
System.out.print(rs.getInt(6) + “\t”);
System.out.println(“”);
}
}
public void close() //用于释放资源,Java里没有析构函数,但是通过重写protected void finalize(),
{ //之后在调用System.runFinalization()和System.gc()可以提醒JVM执行finalize()以释放,
try{ //在以前的J2SE版本里可以通过以上方法调用finalize(),但目前的J2SE5.0只能提醒JVM,但JVM不一定执行
rs.close(); //最好的方案还是自己写析构close();
ps.close();
con.close();
}catch(SQLException ce)
{
System.out.println(ce.toString());
}
System.out.println(“Connection released!!!”);
}
public static void main(String[] args) {
DBConnect dbc=new DBConnect();
dbc.close();
}
}


首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇外企面试题集 下一篇中兴面试失败深度分析

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: