文档详情

华为java面试题3篇.pdf

发布:2023-08-30约3.51万字共40页下载文档
文本预览下载声明
华为java面试题3篇 华为java面试题1 1.Error与Exception有什么区别? error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内 存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正 常,从不会发生的情况。 2.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的执行效率更高. 华为java面试题2 1.short s1 =1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么 错? short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要**转换类型) short s1 = 1; s1 += 1;(可以正确编译) 2.float型float f=3.4是否正确? 不正确。精度不准确,应该用**类型转换,如下所示:float f=(float)3.4 或float f = 3.4f 在java里面,没小数点的默认是int,有小数点的默认是 double; 3.ArrayList和Vector 的区别,HashMap和Hashtable 的区别。 ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际 存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入 元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector 由于使用了synchronized方法(线程安全),通常性能上较ArrayList差。 HashMap是Hashtable 的轻量级实现(非线程安全的实现),他们都完成了 Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全, 效率上可能高于Hashtable。 HashMap允许将null作为一个entry的key或者value,而Hashtable不 允许。 HashMap把Hashtable 的contains方法去掉了,改成containsvalue和 containsKey。因为contains方法容易让人引起误解。 Hashtable继承自 Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。 最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是, 在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。 华为java面试题3篇扩展阅读 华为java面试题3篇(扩展1) ——java面试题3篇 java面试题1 1、和的区别? 答:运算符有两种用法:(1)按位与;(2)逻辑与。运算符是短路与运 算。逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端的 布尔值都是true整个表达式的值才是true。之所以称为短路运算是因为, 如果左边的表达式的值是false,右边的表达式会被直接短路掉,不会进行 运算。很多时候我们可能都需要用而不是,例如在验证用户登录时判定用户 名不是null而且不是空字符串,应当写为:username != null 2、在Java 中,如何跳出当前的多重嵌套循环? 答:在最外层循环前加一个标记如A,然后用break A;可以跳出多重循 环。(Java 中**带标签的break和continue语句,作用有点类似于C和C++中 的goto语句,但是就像要避免使用goto一样,应该避免使用带标签的break 和continue,因为它不会让你的程序变
显示全部
相似文档