Java实习生常规技术面试题每日十题Java基础

Posted 明金同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java实习生常规技术面试题每日十题Java基础相关的知识,希望对你有一定的参考价值。

目录

1. Java设计模式有哪些?

2.GC是什么?为什么要有GC?

3. Java中是如何支持正则表达式。

4.比较一下Java和JavaSciprt。

5.Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?

6.JDBC连接数据库的步骤?

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

8.JDBC中如何进行事务处理

9.JDBC能否处理Blob和Clob

10.JDBC中的PreparedStatement相比Statement的好处


1. Java设计模式有哪些?

Java中有23种设计模式,我觉得理解设计模式对我们程序中的类和类的设计、依赖关系,扩展性,灵活性起着非常重要的作用,比如spring框架中都大量使用了设计模式,我比较熟悉的设计模式有:

1.单例设计模式

2.工厂设计模式(简单工厂、抽象工厂、工厂方法)

3.代理设计模式

4.观察者设计模式

5.适配器模式

6.原型模式

2.GC是什么?为什么要有GC?

GC是垃圾回收的意思(gabage collection),内存处理器是编程人员容易出现问题的地方,忘记或者错误的内存回收导致程序或者系统的不稳定甚至崩溃,java的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,java语言没有提供释放已分配内存的显式操作方法。

3. Java中是如何支持正则表达式。

Java中的String类提供了支持正则表达式操作的方法,包括:matches()、replaceAll()、replaceFirst()、split()。此外,Java中可以用Pattern类表示正则表达式对象,它提供了丰富的API进行各种正则表达式操作。

4.比较一下Java和JavaSciprt。

javascript 与 Java 是两个公司开发的不同的两个产品。Java 是 SUN 公司推出的新一代面向对象的程序设计语言,特别适合于 Internet 应用程序开发;而JavaScript 是 Netscape 公司的产品,其目的是为了扩展 Netscape Navigator功能,而开发的一种可以嵌入 Web 页面中的基于对象和事件驱动的解释性语言,它的前身是 Live Script;而 Java 的前身是 Oak 语言。

5.Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?

11.5+0.5后是12再向下取整是12;-11.5+0.5后是-11再向下取整-11

6.JDBC连接数据库的步骤?

JDBC是java连接及操作数据库的一种技术,使用步骤如下:

1、加载JDBC驱动程序;

Class.forName(“com.mysql.jdbc.Driver”)

2、创建数据库的连接对象;    

Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/数据库名”,”root”,”123456”);

3、创建一个执行sql命令的Statement或PreparedStatement或者CallableStatement对象

4、执行SQL语句;

增删改操作executeUpdate()返回int

查询操作executeQuery()返回结果集ResultSet

5、返回并处理结果;

如果是查询需要对结果集逐行处理:while(rst.next())

6、关闭连接;

conn.close()

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

通过一个字符串加载一个类到java虚拟机中,返回与给定的字符串名称相关联类或接口的Class对象,该方法使用时会抛出ClassNotFoundException,即类无法找到异常。

8.JDBC中如何进行事务处理

事务是为了保证一个业务下的多条更新语句处于同一个不可分割的单元,要么都成功执行要么都取消回滚,目的是保证数据的准确合理性。

JDBC同样对事务进行了很好的支持,因为JDBC默认是开启事务的,所以需要通过数据库连接对象的setAutoCommit(false)来禁止自动提交,然后在执行完相关操作之后,调用连接对象的commit()方法提交事务,如果出现异常则调用rollback()方法进行回滚。

一般在实际应用中,建议使用存储过程来进行事务的控制,因为存储过程更安全,高效。

9.JDBC能否处理Blob和Clob

Blob是指二进制大对象(Binary Large Object),而Clob是指大字符对象(Character Large Objec),因此其中Blob是为存储大的二进制数据而设计的,而Clob是为存储大的文本数据而设计的。JDBC的PreparedStatement和ResultSet都提供了相应的方法来支持Blob和Clob操作。

10.JDBC中的PreparedStatement相比Statement的好处

1、PreparedStatement是Statement的子接口;

2、PreparedStatement支持SQL语句中使用占位符,能够避免SQL注入,安全性更好;

3、PreparedStatement对SQL语句有预编译的功能,所以性能更好;

 

其他面试题:

Java实习生常规技术面试题每日十题Java基础(八)

Java实习生常规技术面试题每日十题Java基础(七)

Java实习生常规技术面试题每日十题Java基础(六)

Java实习生常规技术面试题每日十题Java基础(五)

Java实习生常规技术面试题每日十题Java基础(四)

Java实习生常规技术面试题每日十题Java基础(三)

Java实习生常规技术面试题每日十题Java基础(二)

Java实习生常规技术面试题每日十题Java基础(一)

以上是关于Java实习生常规技术面试题每日十题Java基础的主要内容,如果未能解决你的问题,请参考以下文章

Java实习生常规技术面试题每日十题Java基础

Java实习生常规技术面试题每日十题Java基础

Java实习生常规技术面试题每日十题Java基础

Java实习生常规技术面试题每日十题Java基础

Java实习生常规技术面试题每日十题Java基础

Java实习生常规技术面试题每日十题Java基础