java华为面试题

上传人:抢*** 文档编号:71892230 上传时间:2022-04-07 格式:DOC 页数:7 大小:69.50KB
收藏 版权申诉 举报 下载
java华为面试题_第1页
第1页 / 共7页
java华为面试题_第2页
第2页 / 共7页
java华为面试题_第3页
第3页 / 共7页
资源描述:

《java华为面试题》由会员分享,可在线阅读,更多相关《java华为面试题(7页珍藏版)》请在装配图网上搜索。

1、JAVA方面1 面向对象的特征有哪些方面 2 String是最基本的数据类型吗?3 int 和 Integer 有什么区别int是一个基本类型Integer是一个int的包装类(Integer类包含一个int值)int是一个基本类型Integer是一个int的包装类;在java中,有些对象只能接受包装类,例如Vector类。如果要把一个整型数据放入Vector中,则必须把int转换成Integer。4 String 和StringBuffer的区别String类和StringBuffer类都是lang包下的,并且都可以对字符串进行操作。 但具体的方法不一样,String类提供了一些不可更改字符

2、串的方法,StringBuffer类可以对字符串修改例如:append()方法,insert()方法。 所以说如果你在创建一个字符串的同时希望它以后更改的话,你可以用StringBuffer类来动态生成5运行时异常与一般异常有何异同?异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。6 说出一些常用的类,包,接口,请各举5个类:1.java.lang.Object2.java.lang.String3.java.lang.Syst

3、em4.java.io.file5.java.io.FileInputStream包:1.java.lang包2.java.io包3.java.swt包4.java.util包5.java.sql包接口:1.java.util.List2.java.util.Map3.java.util.Iterator4.java.sql.CallableStatement5.java.lang.Comparable 7 说出ArrayList,Vector, ArrayLlinkedListd的存储性能和特性ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和

4、插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。8设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。public class ThreadTest1private int j;public static vo

5、id main(String args)ThreadTest1 tt=new ThreadTest1();Inc inc=tt.new Inc();Dec dec=tt.new Dec();for(int i=0;i2;i+)Thread t=new Thread(inc);t.start();t=new Thread(dec);t.start();private synchronized void inc()j+;System.out.println(Thread.currentThread().getName()+-inc:+j);private synchronized void dec

6、()j-;System.out.println(Thread.currentThread().getName()+-dec:+j);class Inc implements Runnablepublic void run()for(int i=0;i100;i+)inc();class Dec implements Runnablepublic void run()for(int i=0;i100;i+)dec();9 JSP的内置对象及方法。request request表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, head

7、er, 和session数据的有用的方法。 response response表示HttpServletResponse对象,并提供了几个用于设置送回 浏览器的响应的方法(如cookies,头信息等) out out 对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。 pageContext pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。 session session表示一个请

8、求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息 application applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息 config config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。 page page表示从该页面产生的一个servlet实例10.用socket通讯写出客户端和服务器端的通讯,要求客户发送数据后能够回显相同的数据。参见课程中socket通讯

9、例子。11说出Servlet的生命周期,并说出Servlet和CGI的区别。Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。12.EJB是基于哪些技术实现的?并说出SessionBean和

10、EntityBean的区别,StatefulBean和StatelessBean的区别。13EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?14说出数据连接池的工作机制是什么?J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。15同步和异步有和异同,在什么情况下分别使用他们?举例说明。

11、同步(synchronized)和异步(asynchronized)是对于多线程(multi-threading)而言的 同步可防止并发 主要出于数据安全的考虑 如某一线程在执行完对数据的加法操作后 在还没来得及使用新数据之前 被另一线程就抢先执行了减法操作 这样它就没法得到它单一施加影响的数据结果,存在安全隐患 异步允许并发 ajax技术通常都是异步实现的 去服务端请求数据的同时 前台的操作不会阻塞 而是异步进行 节省时间的同时保证了效率你给你媳妇存钱,先查了一下是1000,你要存100,结果你存的时候你媳妇也正在取钱,她准备取100,如果这个时候不思锁定其中一人的动作,后果就很可能是,你媳

12、妇取走了100,本来应该冲至账户金额为900,待还没有重置,你的存动作就过来了,因为之前你那里得到的信息是1000所以存的时候是1000+100,再以重置帐户,变成1100了 而不是900 这就是同步(一个人占用了,我就不能再做了)16应用服务器有那些?BEA WebLogic Server,IBM WebSphere Application Server,Oracle9i Application Server,jBoss,Tomcat17你所知道的集合类都有哪些?主要方法?最常用的集合类是 List 和 Map. List 的具体实现包括 ArrayList 和 Vector,它们是可变大小

13、的列表,比较适合构建、存储和操作任何类型对象的元素列表. List 适用于按数值索引访问元素的情形. Map 提供了一个更通用的元素存储方法. Map 集合类用于存储元素对(称作键和值),其中每个键映射到一个值.18给你一个:驱动程序A,数据源名称为B,用户名称为C,密码为D,数据库表为T,请用JDBC检索出表T的所有数据。package dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.s

14、ql.Statement;public class Test private String className=A; private String url=B; private String user=C; private String password=D; private Connection connection; private Statement statement; private ResultSet resultSet; public Connection getConn() try Class.forName(className); connection = DriverMan

15、ager.getConnection(url, user, password); catch (ClassNotFoundException e) / TODO 自动生成 catch 块 e.printStackTrace(); catch (SQLException e) / TODO 自动生成 catch 块 e.printStackTrace(); return connection; public ResultSet executeQuery(String sql) connection=getConn(); try statement = connection.createState

16、ment(); resultSet = statement.executeQuery(sql); catch (SQLException e) / TODO 自动生成 catch 块 e.printStackTrace(); return resultSet; public static void main(String args) Test test = new Test(); ResultSet set = test.executeQuery(select * from T); 19说出在JSP页面里是怎么分页的?页面需要保存以下参数:总行数:根据sql语句得到总行数每页显示行数:设定值当

17、前页数:请求参数页面根据当前页数和每页行数计算出当前页第一行行数,定位结果集到此行,对结果集取出每页显示行数的行即可。数据库方面:1. 存储过程和函数的区别存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。2. 事务是什么?事务是作为一个逻辑单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为 ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能成为一个事务:原子性事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。一致性事务在完成时,必

18、须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。隔离性由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。持久性事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。3. 游标的作用?如何知道游标已经到了最后?游标用于定位结果集的行,通过判断全局变量FETCH_STATUS可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。4. 触发器分为事前触发和事后触发,这两种触发有和区别。语句级触发和行级触发有何区别。事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!