|
|
华为java面试题
1 t8 Z$ Y7 F' R2 a k* b! Q# g
0 w! e. ?! G1 X# n+ C W$ f0 e. }" \- Y
————2 K x% l% t4 Z) {0 c0 `: H6 v" t, ?
华为求职俱乐部:
3 e, j7 O1 U3 `' A( y, x4 U3 G* w! Khttp://bbs.aftjob.com/group-52-1.html
. f( Z) s9 \6 p. r: {) J: s2012阿凡提求职手册—华为篇:http://bbs.aftjob.com/thread-613733-1-1.html' H0 _: b Q$ E/ T6 `
————
1 h# D( S ^$ ^* J& G- U, A华为java面试题
8 |6 ?% b$ {; v! {3 i. { {) }' a/ D" G! t4 G. |/ w
JAVA方面8 {: X$ f s x; G0 O* f
1 面向对象的特征有哪些方面 6 }7 O+ H# U, {. v( K
0 |* r& m# p7 X2 String是最基本的数据类型吗?
9 [8 B1 d2 I" N4 _0 h: F4 u
* M+ I9 l% m% i5 B; P3 int 和 Integer 有什么区别3 s6 K# X6 f5 B0 r
- ?# [; E, u! c% @2 G
4 String 和StringBuffer的区别
, V: e7 ~ N k
6 l0 ]- Q$ X' N" y8 n5 运行时异常与一般异常有何异同?
! R7 _4 X2 q0 Z5 |) w5 ?异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。
- Y6 I$ _) A: N
- z9 R, \; k, U) b; L! e, ^6 说出一些常用的类,包,接口,请各举5个
/ B' i7 q4 V& L f1 G: e1 _- [- H! H/ o$ y8 q- Z5 T4 i
7 说出ArrayList,Vector, LinkedList的存储性能和特性4 D5 S! G L3 }, E4 p
ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。8 d3 E0 C4 E' x( z) m* A* t
. s, ~3 i* r$ V8设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
7 ]$ a) ?& G2 A3 [- o8 P. j以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。
+ p' X3 v5 H- P; k$ dpublic class ThreadTest1{$ r7 Y. Y% _; e3 K! Q0 V. D& @6 d
private int j;0 I, X& c. l2 W. C3 h
public static void main(String args[]){4 n0 g" ^' T# p& `% l) c
ThreadTest1 tt=new ThreadTest1();1 J( b7 \2 m# g7 R5 P$ k) R
Inc inc=tt.new Inc();* k1 W# Y( p) f
Dec dec=tt.new Dec();+ q# w- M0 L3 o d
for(int i=0;i<2;i++){
" c& A4 ]5 w( i; ? Thread t=new Thread(inc);
. r v; P5 ^# V t.start();& `: V8 [) i5 U1 s6 f# |4 X5 @
t=new Thread(dec);3 u; j- Q4 u9 G- L" ^ i3 r% A
t.start();/ c+ K |2 J/ i* ?. N3 N g0 x
} C q7 z* m9 [
}: ?$ _2 ^1 E1 V$ o2 Q, Z
private synchronized void inc(){% D1 A% U; j a8 k8 m: K( `! P* }
j++;
0 h) G7 b& E2 w1 L1 F5 M1 W System.out.println(Thread.currentThread().getName()+"-inc:"+j);
( n% h9 f) @2 D6 b }" S1 V9 e0 r3 E4 l; K- x
private synchronized void dec(){. Z- m& J: h- K5 C/ O5 L' {
j--;
N" q; n0 ~! S' |9 D L/ f System.out.println(Thread.currentThread().getName()+"-dec:"+j);/ f; y8 I: k8 i4 n! {9 Y! e2 o
}3 E) a' O( O Z/ Y" X* _7 H
' f& B8 r( `' W: j- e
class Inc implements Runnable{+ h2 M1 y! }' k/ f" i( |
public void run(){
; D" D( V& E3 t2 S m+ Q# ?+ y for(int i=0;i<100;i++){
* b& N# o2 l* _0 x& @ inc();
5 e! i! s3 u! x7 P1 |, ^ }) m; M4 J2 P! ?( j% p& i
}
4 q5 d$ `! c% K' Q }2 p, t; X' ~7 p, R, Q
class Dec implements Runnable{. H v$ T7 v: \& k. C- b' G5 X B
public void run(){8 l$ n, a9 [* i7 q# y
for(int i=0;i<100;i++){/ C4 H0 O( [ o) F, s* |- G; T0 }: v
dec();
( Y# {3 W5 ]6 d$ T }1 F1 W5 _: G3 l9 a G
}
0 i2 R5 A3 o: Q% u; a" g2 p } c5 s' F6 v7 V* j& u3 @
}
# g) s7 ]; X I9 ]9 J+ L( V2 e6 U' c* x- q$ n0 s/ E2 X; L2 _
9.JSP的内置对象及方法。6 l& N: Z6 P$ V+ g- m8 L
request request表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, header, 和session数据的有用的方法。 + x4 K0 l: a0 Q2 h& ?* t; g
" z& v' j3 g1 R& A Eresponse response表示HttpServletResponse对象,并提供了几个用于设置送回 浏览器的响应的方法(如cookies,头信息等)
$ q9 _! G, r, i+ V% R$ y1 I8 M! T, g4 w8 p2 y
out out 对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。 , ^) m/ {4 v5 l- I$ ^0 G
1 P' w( w8 J: A5 g9 q' w
pageContext pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。
9 b1 h$ E1 d; a. u* B+ s: t' b4 r8 ^4 R* g& i
session session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息 . {7 b4 f( D/ v |) S8 Y* k$ X
9 ? Q1 W4 L8 m# B* U- H9 fapplication applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息 # O. X+ y4 @- G8 q; s( b% N4 T! t
; G9 f5 w3 z+ t: d& i3 ]" g- S
config config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。
" L7 q* }$ @: Y& C( f
& p$ q/ C; Z( q% X0 epage page表示从该页面产生的一个servlet实例' a* j. T5 h: Y, V
10.用socket通讯写出客户端和服务器端的通讯,要求客户发送数据后能够回显相同的数据。
8 I! l, I* |3 T, B$ @- F参见课程中socket通讯例子。9 |% d. W; E9 _5 w/ N8 G7 }# H
) ~) _1 }' H" n: U7 Q
11说出Servlet的生命周期,并说出Servlet和CGI的区别。
2 W) ~& S- D+ i% }9 ?3 p5 V) kServlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。8 X# \) d5 q& y& ~
与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。
3 Z7 t! |! e$ v, {- |12.EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。# s6 b; [3 k6 P0 N5 A
4 Y3 ~& h' K7 Y0 u13.EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?
2 \8 ?0 |2 c4 k* c- |- I0 e9 t0 H k
14.说出数据连接池的工作机制是什么?
0 x. M9 ^, [) H& M% s; G5 N, M. d
15.同步和异步有和异同,在什么情况下分别使用他们?举例说明。
; S/ A& k7 M+ a( b4 K1 w
" @3 v& G1 k* o3 }# x16.应用服务器有那些?
& a% t w5 v$ \4 M, ]% |% u X$ k$ K% H+ y
17你所知道的集合类都有哪些?主要方法?. O- ?( X4 v6 F% f! K" G0 p1 T( ^
+ T2 l0 i! y, v, f
18给你一个:驱动程序A,数据源名称为B,用户名称为C,密码为D,数据库表为T,请用JDBC检索出表T的所有数据。4 c; j3 e, s J
3 p! c8 J, x# `3 Z6 B$ u' `19.说出在JSP页面里是怎么分页的?
+ J7 j4 @5 e% u, d3 W页面需要保存以下参数:
- P3 \1 h4 p6 l& a0 W2 ]/ X总行数:根据sql语句得到总行数8 Z: x. ~2 }6 E0 S
每页显示行数:设定值5 b2 v; [+ P. ]: U' h8 n
当前页数:请求参数! E* V4 h7 k- T0 C6 }" f
页面根据当前页数和每页行数计算出当前页第一行行数,定位结果集到此行,对结果集取出每页显示行数的行即可。5 B+ s$ ]2 [/ d, x8 R9 E7 E
------------------
- c% I% I( g2 L' R: D数据库方面:
3 V/ a6 {3 a1 P# j5 `2 P, Q" ?4 l7 A/ d( O% z, e
1.存储过程和函数的区别
# T, u6 i& m3 k/ G4 w h存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。
3 y: W3 h0 ]! {3 ~2.事务是什么?
" V; h0 A( y) w& g8 x R! h事务是作为一个逻辑单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为 ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能成为一个事务:
8 I$ `' Y: ?: Y& q9 ~' e原子性# Y4 l/ m9 s4 l" U
事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。4 Z$ M- H% D3 ^5 r7 e( L
一致性& v: H: T: G& e k
事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。
0 q# F+ c e: P' E) A8 O隔离性
9 }$ A" _+ v. c! l由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。
2 Y! |7 i, Q7 Q3 _7 b持久性
) Y0 m6 k$ f" t, ~事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。9 Y3 e. `# P# I/ E3 G5 ]
4 ~ V& p0 F. i" g7 O
3.游标的作用?如何知道游标已经到了最后?
' f% _) {: @; c0 n- s游标用于定位结果集的行,通过判断全局变量@@FETCH_STATUS可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。
- j; s# W9 K; x' v" }3 \. Z( V+ ]% q; g4.触发器分为事前触发和事后触发,这两种触发有和区别。语句级触发和行级触发有何区别。
7 ~ f* S1 d; S; x7 t事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。
" s7 C; g1 k; v语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。 [( i, v' {; x+ u# n& q0 _1 m
) E7 e i/ A6 o( ~: h=================================
+ H) @8 V( `; N9 x综合面试
1 h; u' |! h% O" N Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? , k7 _0 @, ?% Z! Y2 [1 `
7 ], n) ]0 ?0 u# K Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢? 7 F2 J3 q( Z; E! `
Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?
5 C3 f8 H/ c4 t% d% ^/ [$ {. m& |+ n/ ? y: w& h" h! Z
Q4:请问C++的类和C里面的struct有什么区别? \1 z0 P* i+ ?9 V
* R+ b: U. p, R2 a
Q5:请讲一讲析构函数和虚函数的用法和作用? ' i3 u6 J. f1 \ X5 ~4 K! Q
) d3 x3 t) r. P" z3 v Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的 ! C3 X: y" q$ F. S! q' c2 [
Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。 , D2 t, }# r' N
& w; c6 o* x' S Q8:8086是多少尉的系统?在数据总线上是怎么实现的?
# Z. z& ?* n% D. C
2 P O4 D3 R9 R% B ^-----------------------------------------------------0 C r) P& V" c) @1 o
网络工程师:
% Y: D! k* s0 u" z1 H.323协商。(笔试题)
7 W0 t1 J. \2 O- A2 ipsec为什么是三层的。l2tp为什么是二层的?
+ k! m, k1 a' U' {# g3 ospf中包的ttl值是多少?! |0 ?7 m! \$ \7 u. q6 R6 a
4 OSPF为什么要划分区域?
( Q4 w# h5 [; Y) B1 f. {5 MPLS VPN的标签一共有几层。内网的标签放在哪里。
5 [7 s0 K0 b, `' n) E, O6 MPLS中RD和RT的作用分别是什么?0 O/ H, S% D/ m+ |5 i
7 RR防止环路的机制。
/ A9 w4 k0 B, ` J3 r0 D8 BGP控制out-bound用local-pre,控制进来的用med.(笔试题)
# V& T# Y5 \# z8 U3 Y3 a2 L8 M9 ospf是工作在哪个协议上的?# E% e1 B5 l& `& P1 k& n
10 ospf的LSA类型。) B2 X: D( U! ~
11 简述OSPF的基本工作机制。( u7 \# y N& X- h4 ~$ w
12 ppp的lcp和ncp协商过程。$ x' a2 ?! O3 c: ?4 M8 Z3 @
13 笔试中还有一道PSTN的信令控制有哪三种?(笔试题)
& x& K- z/ d3 u c14sloari 8.0查看进程的命令是什么?linux 7.3查看IP的命令是什么?(笔试题)/ A9 f. ~ s" y: b/ _# p
15 IP是5.32.0.0,掩码255.224.0.0。请问最大的有效地址是多少。(笔试题)- T. m0 O) I2 _! J
16 下列哪一项不属于于7号信令标准?! ^$ S9 q& w$ b/ v5 u/ L
17 lx/???的有效距离是多少?% A, @; Y- f& p1 D' |9 W. N# ^
18 IP 包头几个字节?加上数据部分几个字节
2 ?7 i; V3 a+ o' E8 {5 _19 QOS有一点点。3 u' b' {0 F8 r$ k& T- D! n
20 CQ能不能有一种流量dominate第二种流量? (笔试题)
7 K& k, z# Z A# q, E! n: q21 FTP下载一个文件完成。有几个TCP连接??(笔试题)+ L8 ~, K" ? U# `* H
& ~- w! Z% [$ _ N: e0 O
7 C: S4 v4 S9 a" ^8 ~————
c: f: \ c! B( \$ {“2012行业求职交流QQ群”:' s- A* y e' N2 @2 L
6 `* u- s8 |) S, ]- q
2012-金融求职交流QQ群 : 110393951
: O7 q2 l2 j$ V- ~2012-会计求职交流QQ群 : 7098899
* P S8 _8 ~5 E% L2012-IT求职交流QQ群 : 100761599. G: i+ s% S; F# B4 K+ u! b
2012-通信求职交流QQ群: 59622472
8 X: E7 o- {7 ]5 }2012-硬件求职交流QQ群 : 44853679; ]" d, C6 X7 u+ Q
2012-证券求职交流QQ群 : 100756915
5 J3 A/ \. }& D4 E$ D% w; B2012-快消求职交流QQ群 : 44183642' X* }$ h4 {* O6 ?( S3 Q/ @5 K
, d/ V5 g5 x* _ m7 @0 F加群说明:
3 z) S5 V3 _3 ~, h1 P' ~1. 申请入群规则:学校简称 + 姓名' p: W1 [* W' S
2. 成员命名规则:学校简称 + 姓名
, n5 \" q/ C7 ~; e. L3. 本群二周内不发言者,请自觉退群,谢谢合作!!! |
|