Java校招面试题目合集- day05

finally代码块和finalize()方法有什么区别?

参考答案

无论是否抛出异常,finally代码块都会执行,它主要是用来释放应用占用的资源。finalize()方法是Object类的一个protected方法,它是在对象被垃圾回收之前由Java虚拟机来调用的。

事件监听器接口(event-listener interface)和事件适配器(event-adapter)有什么关系?

参考答案

事件监听器接口定义了对特定的事件,事件处理器必须要实现的方法。事件适配器给事件监听器接口提供了默认的实现。

GUI组件如何来处理它自己的事件?

参考答案

GUI组件可以处理它自己的事件,只要它实现相对应的事件监听器接口,并且把自己作为事件监听器。

Java的布局管理器比传统的窗口系统有哪些优势?

参考答案

Java使用布局管理器以一种一致的方式在所有的窗口平台上摆放组件。因为布局管理器不会和组件的绝对大小和位置相绑定,所以他们能够适应跨窗口系统的特定平台的不同。

Java的Swing组件使用了哪种设计模式?

参考答案

Java中的Swing组件使用了MVC(模型-视图-控制器)设计模式。

什么是JDBC?

参考答案

JDBC是允许用户在不同数据库之间做选择的一个抽象层。JDBC允许开发者用JAVA写数据库应用程序,而不需要关心底层特定数据库的细节。

解释下驱动(Driver)在JDBC中的角色。

参考答案

JDBC驱动提供了特定厂商对JDBC API接口类的实现,驱动必须要提供java.sql包下面这些类的实现:Connection, Statement, PreparedStatement,CallableStatement, ResultSet和Driver。

Class.forName()方法有什么作用?

参考答案

初始化参数指定的类,并且返回此类对应的Class 对象

PreparedStatement比Statement有什么优势?

参考答案

PreparedStatements是预编译的,因此,性能会更好。同时,不同的查询参数值,PreparedStatement可以重用。

数据库连接池是什么意思?

参考答案

像打开关闭数据库连接这种和数据库的交互可能是很费时的,尤其是当客户端数量增加的时候,会消耗大量的资源,成本是非常高的。可以在应用服务器启动的时候建立很多个数据库连接并维护在一个池中。连接请求由池中的连接提供。在连接使用完毕以后,把连接归还到池中,以用于满足将来更多的请求。

猜你喜欢

转载自blog.csdn.net/qq_45065517/article/details/107108559