华为面试题(附答案)Oracle-DBA、JAVA架构师必看

华为面试题(附答案)Oracle-DBA、JAVA架构师必看
华为面试题(附答案)Oracle-DBA、JAVA架构师必看

DBA数据库管理员JAVA程序员架构师必看

一、技术问题部分(数据库部分)

1、表空间的管理方式有哪几种?

数据字典管理方式

本地文件管理方式

2、谈谈你对索引的理解?

索引是若干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。

3、说说索引的组成?

索引列、rowid

4、分区表用过么?谈谈分区表的应用?

分区表在对表的DML的并行处理上有极大得优势,而且可以一部分设为只读,用在销售记录,医院处方等地方!!

5、你对分区表的理解?怎样截断分区表一个分区的记录?

一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分区分区的行

分区表中的每一个分区为一个段,可各自位于不同的表空间中

对于同时能够使用几个进程进行查询或操作的大型表分区非常有用

alter table table_name truncate partition partition_name;

6、物理文件有哪几种?控制文件包含了什么信息?

1)数据文件2)控制文件3)日志文件

包含维护和验证有选举权据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个有选举权据库至少需要一个控制文件

7、表空间用完了如何增加?

三种种扩展方式:

1 增加数据文件alter tablespace name add datafile …路径? size 4M;

2 扩展数据文件大小alter database datafile …路径? resize 4M;

3 把数据文件设为自动增长

alter database datafile …路径? autoextend on next 1M max size 20M;

8、SGA包含几部分?

Shared pool(共享池),DataBase Buffer Cache(数据缓冲区)

Redo Log Buffer(重做日志缓冲区), Large Pool,大池,JAVA池。

9、DECODE函数的用法?

DECODE的语法:DECODE(value,if1,then1,if2,then2,if3,then3,...,else),表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。初看一下,DECODE 只能做等于测试,但刚才也看到了,我们通过一些函数或计算替代value,是可以使DECODE函数具备大于、小于或等于功能。还可以转化表结构!

10、DELETE和TRUNCATE的区别?

答:1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。

2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。

3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。

4、TRUNCATE不能触发任何DELETE触发器。

5、不能授予任何人清空他人的表的权限。

6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。

7、不能清空父表。

11、谈谈你对事务的理解?

ORACLE事务从COMMIT、ROLLBACK、连接到数据库或开始第一

条可执行的SQL语句时开始,到一条COMMIT、ROLLBACK语句或退出

数据库时结束。如果在一个事务中包含DDL语句,则在DDL语句的

前后都会隐含地执行COMMIT语句,从而开始或结束一个事务。

如果一个事务由于某些故障或者由于用户改变主意而必须在

提交前取消它,则数据库被恢复到这些语句和过程执行之前的状

态。

利用ROLLBACK语句可以在COMMIT命令前随时撤消或回退一个

事务。可以回退整个事务,也可以会退部分事务,但是不能回退

一个已经被提交的事务。回退部分事务的ROLLBACK命令为:

ROLLBACK to savepoint 存储点名

存储点是用户放入事务中的标记,用来表示一个可被回退的

位置。存储点通过在事务中放入一个SAVEPOINT命令而被插入。该

命令的语法是:

SAVEPOINT 存储点名

如果在ROLLBACK语句中没有给出存储点名,则整个事务被回

退。

12、给表A加一列abc口述?

数据库正在应用时应先使数据库处于静默状态再

alter table a add abc varchar2(10),

如果不是就直接用!!

13、客户端连接服务器需要修改什么文件?

tnsname.ora,listener.ora

14、索引重建的概念?说说索引重建的意义?

当我们创建索引时,oracle会为索引创建索引树,表和索引树通过rowid(伪列)来定位数据。当表里的数据发生更新时,oracle会自动维护索引树。但是在索引树中没有更新操作,只有删除和插入操作。

例如在某表id列上创建索引,某表id列上有值“101”,当我将“101”更新为“110”时,oracle同时会来更新索引树,但是oracle先将索引树中的“101”标示为删除(实际并未删除,只是标示一下),然后再将“110”写到索引树中。

如果表更新比较频繁,那么在索引中删除标示会越来越多,这时索引的查询效率必然降低,所以我们应该定期重建索引。来消除索引中这些删除标记。

一般不会选择先删除索引,然后再重新创建索引,而是rebuild索引。在rebuild

期间,用户还可以使用原来的索引,并且rebuild新的索引时也会利用原来的索引信息,这样重建索引会块一些。

15、你对游标的理解,游标的分类,使用方法?

游标是结果集数据中的指针,作用是为遍历结果集时,存储每条记录的结果,

1.声明游标,

2.打开游标,

3.提取游标,

4.关闭游标

游标for循环

显式游标,隐式游标,游标变量!

16、存储过程的用法?在存储过程中异常的处理,分类?举两个预定义异常的例子? 存储过程:是预编译数据库SQL的集合

存储过程是预编译过的,执行时勿须编译,执行速度更快,存储过程封装了一批SQL语句,便于维护数据的完整性与一致性。并且可以多次调用。

异常:自定义,预定义,非预定义

No_Data_Found Too_Many_Rows CASE_NOT_FOUND

17、谈谈你对分区索引的理解,说说分类和区别?

分区表和一般表一样可以建立索引,分区表可以创建局部索引和全局索引。当分区中出现许多事务并且要保证所有分区中的数据记录的唯

一性时采用全局索引。

1.3.1. 局部索引分区的建立:

SQL> create index dinya_idx_t on dinya_test(item_id)

2 local

3 (

4 partition idx_1 tablespace dinya_space01,

5 partition idx_2 tablespace dinya_space02,

6 partition idx_3 tablespace dinya_space03

7 );

Index created.

SQL>

看查询的执行计划,从下面的执行计划可以看出,系统已经使用了索引:SQL> select * from dinya_test partition(part_01) t where t.item_id=12; Execution Plan

----------------------------------------------------------

0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=187)

1 0 TABLE ACCESS (BY LOCAL INDEX ROWID) OF ?DINYA_TEST? (Cost=

2 Card=1 Bytes=187)

2 1 INDEX (RANGE SCAN) OF ?DINYA_IDX_T? (NON-UNIQUE) (Cost=1

Statistics

----------------------------------------------------------

0 recursive calls

0 db block gets

4 consistent gets

0 physical reads

0 redo size

334 bytes sent via SQL*Net to client

309 bytes received via SQL*Net from client

2 SQL*Net roundtrips to/from client

1 sorts (memory)

0 sorts (disk)

2 rows processed

SQL>

1.3.

2. 全局索引分区的建立

全局索引建立时global 子句允许指定索引的范围值,这个范围值为索引字段的范围值:

SQL> create index dinya_idx_t on dinya_test(item_id)

2 global partition by range(item_id)

3 (

4 partition idx_1 values less than (1000) tablespace dinya_space01,

5 partition idx_2 values less than (10000) tablespace dinya_space02,

6 partition idx_3 values less than (maxvalue) tablespace dinya_space03

7 );

Index created.

SQL>

本例中对表的item_id字段建立索引分区,当然也可以不指定索引分区名直接对整个表建立索引,如:

SQL> create index dinya_idx_t on dinya_test(item_id);

Index created.

SQL>

同样的,对全局索引根据执行计划可以看出索引已经可以使用:

SQL> select * from dinya_test t where t.item_id=12;

Execution Plan

----------------------------------------------------------

0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=3 Bytes=561)

1 0 TABLE ACCESS (BY GLOBAL INDEX ROWID) OF ?DINYA_TEST? (Cost

=2 Card=3 Bytes=561)

2 1 INDEX (RANGE SCAN) OF ?DINYA_IDX_T? (NON-UNIQUE) (Cost=1

Card=3)

Statistics

----------------------------------------------------------

5 recursive calls

0 db block gets

10 consistent gets

0 physical reads

420 bytes sent via SQL*Net to client

309 bytes received via SQL*Net from client

2 SQL*Net roundtrips to/from client

3 sorts (memory)

0 sorts (disk)

5 rows processed

18、创建用户的语句?

Create user user_name identified by password

default tablespace tablespacename;

grant create session to username;

19、谈谈你对实例的理解?

Oracle是用实例来进行数据库管理的,实例在用户和orale数据库之间充当中间层的角色。每当在服务器上启动数据库时,就在内存中创建一个oracle实例,即oracle为数据库分配内存和创建并启动一个或多个oracle进程,然后由实例加载并打开数据库,最后由这个实例来访问和控制硬盘中的数据文件。

20、触发器中能用COMMIT,为什么?

在触发器中不能使用COMMIT;等事务控制语句。因为触发器是事务触发的如果有事务控制语句就会影响到触发它的事务。即连带触发它的语句之前的已经完成的没有提交的语句都要受到影响。这是会影响到数据的一致性的。

21、有几种表空间?

数据表空间(永久表空间)、临时表空间、撤销表空间

22、归档模式与非归档模式?为什么归档模式可以恢复到任意时刻?

归档是在重做日志文件被覆盖之前,将该重做日志文件通过复制操作系统文件的方式,保存到指定的位置。保存下来的重做日志文件的集合被称为归档重做日志文件,复制的过程被称为归档。

在归档日志(ARCHIVELOG)模式下,ORACLE对重做日志文件进行归档操作。非归档日志(NOARCHIVELOG)模式下,不会对重做日志文件进行归档操作。由于非归档模式不会在覆盖之前保存,这样就造成了数据库在一定时间之前的重做日志文件丢失,也就不能恢复到被覆盖之前。而归档模式在任意时间上都有重做日志文件,故可以恢复到任意时刻。

二、技术问题(JAVA部分)

1、Struts和Hibernate分别属于持久层,用例层,表示层的那一层?

Struts是表示层,Hibernate是持久层。

2、Struts里如何体现MVC模式?

Html或jsp文件是MVC模式中的视图层

ActionForm是MVC模式中的模式层

Action是MVC模式中的控制层

通过控制层可以对视图层和模式层进行业务逻辑的处理

3、用Struts做过那些项目?

4、谈谈对Struts的认识?

Struts跟Tomcat诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。

除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。

关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。

但是我觉得它虽然还有不少缺点,但它是一种非常优秀的J2EE MVC实现方式,对项目的开发有很大的帮助。

5、String在JAVA里是固定长度的吗?为什么可以用”+”连接?

String 在JAVA中是有固定长度的

可以用”+”连接的原因是Java 语言提供对字符串串联符号("+")和其他对象到字符串的转换的特殊支持。字符串串联是通过StringBuilder(或StringBuffer)类及其append 方法实现的。再通过调用StingBuffer中的toString方法,将StringBuffer的对象转换String的对象。

6、String和StringBuffer的区别?

STRING的长度是不可变的,STRINGBUFFER的长度是可变的。如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法

7、使用过什么集合类型?你一般用什么类?

集合类型List,Set,Map

一般用Arraylist,Vector,HashMap,HashTable,HashSet,TreeSet

8、ArrayList里如何取得对象的长度?

通ArrayList中的size()可以取得对象长度。

9、事务的4个特性?

原子性、一致性、持久性、隔离性。

10、Oracle用了多久?char与varchar2的区别?

Char是固定长度字符串,varchar2是变长字符串。

比如在char(10)和varchar2(10)中插入test字符串那么

char(10)类型长度就是10,不足的用空格补齐,而

varchar2(10)类型长度就是4。

11、Oracle用什么获得字符集?

Userenv(…?)函数

SELECT userenv(…language?) FROM DUAL;

12、查询需要COMMIT吗?插入呢?

查询不需要,插入需要,因为做DML操作时需要commit命令确认事务更改。

13、在Oracle中你用什么工具执行SQL语句? PLSQL Developer,SQLPLUS等

三、非技术问题部分

1、自我介绍!

2、你对出差的看法?

3、你对加班的看法?

4、你认为你适合IT业吗?

5、你觉得你的优势在什么地方?

6、你有什么其他的爱好?

7、你能吃苦吗?

DBA数据库管理员JAVA程序员架构师必看

华为笔试题:JAVA

一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A.Java程序经编译后会产生machinecode B.Java程序经编译后会产生bytecode C.Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是() A.java.sqlB.java.awtC.https://www.360docs.net/doc/932358255.html,ngD.java.swing 答案:A 5.下列运算符合法的是() A.&&B.<>C.ifD.:= 答案:A 6.执行如下程序代码 a=0;c=0; do{

--c; a=a-1; }while(a>0); 后,C的值是() A.0B.1C.-1D.死循环 答案:C 7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象 答案:A 9.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 答案:D https://www.360docs.net/doc/932358255.html, 二、多项选择题 1.Java程序的种类有()

华为java面试题中的九道单选

华为java面试题中的九道单选1.Java是从( )语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC答案:B 2.下列语句哪一个正确( ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D. 以上都不正确答案:B 3.下列说法正确的有( ) A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D. 一个class只能定义一个constructor答案:C 4.提供Java存取数据库能力的包是( ) A.java.sql B.java.awt https://www.360docs.net/doc/932358255.html,ng D.java.swing答案:A 5.下列运算符合法的是( ) A.&& B.<> C.if D.:=答案:A 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1;

}while(a>0); 后,C的值是( ) A.0 B.1 C.-1 D.死循环答案:C 7.下列哪一种叙述是正确的( ) A. abstract修饰符可修饰字段、方法和类 B. 抽象方法的body部分必须用一对大括号{ }包住 C. 声明抽象方法,大括号可有可无 D. 声明抽象方法不可写出大括号答案:D 8.下列语句正确的是( ) A. 形式参数可被视为local variable B. 形式参数可被字段修饰符修饰 C. 形式参数为方法被调用时,真正被传递的参数 D. 形式参数不可以是对象答案:A 9.下列哪种说法是正确的( ) A. 实例方法可直接调用超类的实例方法 B. 实例方法可直接调用超类的类方法 C. 实例方法可直接调用其他类的实例方法 D. 实例方法可直接调用本类的类方法答案:D 二、多项选择题 1.Java程序的种类有( ) A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( )

JAVA面试题(_华为)(答案)

软件开发应试人员考试试题(Java) 姓名:___________ 电话:___________ 以下信息有工作经验人员如实填写,应届毕业不填(时间从毕业参加工作算起) 从事Java开发时间____月熟悉JavaScrip时间____月 熟悉EXT开发时间____月熟悉PDM开发时间____月 熟悉的数据库及时间(如SQLServer 3个月,可多填)___________________ 一、JAVA基础 1、简述你所知道的JA V A修饰符及各自的使用机制?(public、abstract、final、synchronized、super…) public :允许所有客户访问 protected:只能在本包内被该类的子类所使用 private:只允许在本类内使用 abstract:没有提供实现,需要子类提供 static:与整个类相关,与单个对象无关 final:你只能定义一个实体一次,以后不能改变它或继承它。一个final修饰的类不能被子类化,一个final 修饰的方法不能被重写,一个final修饰的变量不能改变其初始值 synchronized:方法获得对对象监控的访问权;如果该方法是static类型的,获得是对类本身的访问权。super:构造器和方法,都用关键字super指向超类,但是用的方法不一样。方法用这个关键字去执行被重载的超类中的方法。 2. String、StringBuffer与StringBuilder之间区别?别简述各自的执行效率? 区别:String 类型和StringBuffer 类型的主要性能区别其实在于String 是不可变的对象, 因此在每次对String 类型进行改变的时候其实都等同于生成了一个新的String 对象,然后将指针指向新的String 对象,所以经常改变内容的字符串最好不要用String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后,JVM 的GC 就会开始工作,那速度是一定会相当慢的, 执行速度:三者在执行速度方面的比较:StringBuilder > StringBuffer > String 使用场景:1.如果要操作少量的数据用= String 2.单线程操作字符串缓冲区下操作大量数据= StringBuilder 3.多线程操作字符串缓冲区下操作大量数据= StringBuffer 2、静态变量和实例变量的区别?能在静态方法中调用非静态变量吗? 静态变量属于类,该类不生产对象,通过类名就可以调用静态变量。实例变量属于该类的对象,必须产生该类对象,才能调用实例变量 静态方法及变量属于整个类,数据将会被存储在公共区域,非静态方法及变量属于对象 静态方法中无法调用实例变量,而实例方法却可以调用静态变量

华为外包java面试题

SSH篇(后台) 一、SSH概述 1.1 SSH的含义 当前J2EE企业级应用分为三层:表现层-业务层-数据源层,而SSH代表了每一层的具体实现,它是三种流行的开源框架的缩写,S-Struts,S-Spring,H-Hibernate。这三者的组合是当前J2EE开发的标准模式,也代表了J2EE正在朝着简化复杂性,轻量化方向发展,最新J2EE 6已证明了这种趋势。 1.2 J2EE开发模式的演变 J2EE应用一直采用三层加构,即表现层-业务层-数据源层。 旧石器时代:J2EE应用采用表现层-远程EJB-实体EJB(或JDBC),这是最为正宗也是最复杂的J2EE开发,适用于银行等小部分项目;随后由于微软.NET的兴起以及其对J2EE的挑战,正宗的J2EE出现了一个变种:表现层-本地EJB-Ibatis,在这种模型中业务层选择了本地EJB,同时数据源层也改为Ibatis,这种模式极大的提高性能,华为大部分项目采用这种构架。在这两种架构中,由于采用了EJB组件模型,从而依赖于EJB容器,而EJB容器以一种全无或全有的方式提供服务,同时业务实现也受制于容器。这种开发模式导致了以下复杂性:依赖于应用服务器,不可移植,开发困难,无法在容器外测试,部署复杂,效率低下。 新石器时代:在新石器时代依然采用了三层加构,只是抛弃了EJB,而采用了Spring等轻量级容器,同时持久化由全自动的Hibernate承担。在这种架构中,由于放弃了EJB,放弃了全功能的应用服务器,在节省了软件许可费用的同时也大大提高了软件开发效率。由于web服务器的可移植也好于应用服务器,从而使得J2EE应用可顺利移植。

华为java笔试面试题

华为Java笔试题+数据库题 一、单项选择题 1.Java是从( B)语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确(B ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 3.下列说法正确的有(C ) A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 4.提供Java存取数据库能力的包是( A) A.java.sql B.java.awt C.https://www.360docs.net/doc/932358255.html,ng D.java.swing 5.下列运算符合法的是( A) A.&& B.<> C.if D.:= 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是(C ) A.0 B.1 C.-1 D.死循环 7.下列哪一种叙述是正确的( D) A. abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 8.下列语句正确的是( C) A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 9.下列哪种说法是正确的(A ) A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 二、多项选择题 1.Java程序的种类有(BCD ) A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( BCD) A.环境变量可在编译source code时指定

华为JAVA编程规范试题

JAVA编程规范试题 一、判断题(每题2分,共28分) 1、if, for, do, while, case, switch, default 等语句自占一行,且if, for, do, while, switch, case等语句的执行语句无论多少都要加括号{}。 2、包的注释内容要求包括:简述本包的作用、详细描述本包的内容、产品模块 名称和版本、公司版权、生成日期等。 3、类注释部分,描述部分说明该类或者接口的功能、作用、使用方法和注意事 项,每次修改后增加作者、新版本号和当天的日期,@since 表示从那个版本开始就有这个类或者接口,@deprecated 表示不建议使用该类或者接口。4、对于方法内部用throw语句抛出的异常,必须在方法的注释中标明;对于所 调用的其他方法所抛出的异常,在注释中要求说明所有的异常;对于非RuntimeException,即throws子句声明会抛出的异常,必须在方法的注释中标明。 5、类名和接口使用完整的英文单词描述,每个英文单词的首字母使用大写、其 余字母使用小写的大小写混合法。 6、com.huawei.四级部门名称.项目名称,符合包命名规范。 7、不能用异常来做一般流程处理的方式,不要过多地使用异常,异常的处理效 率比条件分支低,而且异常的跳转流程难以预测。 8、划分类的时候,应该尽量把逻辑处理、数据和显示分离,实现类功能的多样 化。 9、一个方法不应抛出太多类型的异常,如果程序中需要分类处理异常,则将异 常根据分类组织成继承关系。 10、switch 语句中的 case 关键字要和后面的常量保持一个空格;如果有特殊 的需要要在switch语句中定义case以外的标签,需要在注释中说明。 11、没有被覆盖的友好方法和没有子类的友好类应该定义成final。 12、简单的类可以通过名字比较两个对象的类,推荐使用 getClass()或者 instanceof()。 13、不要调用 Thread 类的 resume(), suspend(),sleep(), stop() 方法。

华为的java电话面试10题

1、有哪些数据类型 Java定义了8种简单类型:byte、short、int、long、char、float、double和boolean 2、有几种访问机制? 同一个类同一个包不同包的子类不同包的非子类 private yes default yes yes protected yes yes yes public yes yes yes yes 3、JDBC的过程 1. 加载JDBC驱动程序 Class.forName("com.mysql.jdbc.Driver");//MySQL的加载JDBC驱动程序的方法 Class.forName("org.postgresql.Driver");//PostgreSQL的加载JDBC驱动程序的方法 Class.forName("oracle.jdbc.driver.OracleDriver");//Oracle的加载JDBC驱动程序的方法Class.forName("https://www.360docs.net/doc/932358255.html,.DB2Driver");//DB2的加载JDBC驱动程序的方法Class.forName("com.sybase.jdbc2.jdbc.SybDriver");//Sybase的加载JDBC驱动程序的方法Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//SQLServer的加载JDBC驱动程序的方法 2. 建立数据库连接 与MySQL数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:mysql://MyDbComputerNameOrIP:3306/myDBName",ID,Pwd); 与PostgreSQL数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:postgresql://MyDbComputerNameOrIP:3306/myDBName",ID,Pwd); 与Oracle数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL",ID,Pwd); 与Sybase数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:sybase:Tds:MyDbComputerNameOrIP:2638",ID,Pwd); 与SQL Server数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master",ID,Pwd); 与DB1数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:db2://MyDbComputerNameOrIP/myDBName",ID,Pwd); 3. 创建并执行SQL语句 用Connection.createStatement()方法来创建一个Statement对象。Statement对象执行一个查询并从DBMS返回一个包含响应结果的ResultSet对象。 4. 处理从DBMS返回的数据 查询处理后从DBMS收到的查询结果赋给java.sql.ResultSet对象,该对象包含一些用来从结果集中获取数据存到Java变量中的方法,以便进行进一步处理。 5. 关闭数据库连接 使用与数据库有关的对象所消耗的内存是很大的,因此在完成数据库访问后要及时关闭数据库连接,同时还应关闭Connection中返回的内容,包括Statement 对象和ResultSet对象。 4、preparStatement和普通statement的区? 5、servlet的生命周期 1. 加载/ 实例化:

华为java笔试题

华为Java笔试题 时间:2011-08-04 15:21来源:作者:点击: 9 次 本文Tag标签: 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.PasacalD.BASIC 答案:B 2.下列语句哪一个正确() A.Java程序经编译后会产生machinecode B.Java程序经编译后会产生bytecode C.Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是() A.java.sqlB.java.awtC.https://www.360docs.net/doc/932358255.html,ngD.java.swing 答案:A 5.下列运算符合法的是() A.&&B.<>C.ifD.:= 答案:A 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0B.1C.-1D.死循环 答案:C 7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类

B.抽象方法的body部分必须用一对大括号{}包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是() A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 答案:A 9.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 答案:D 二、多项选择题 1.Java程序的种类有() A.类(Class)B.AppletC.ApplicationD.Servlet 2.下列说法正确的有() A.环境变量可在编译sourcecode时指定 B.在编译程序时,所能指定的环境变量不包括classpath C.javac一次可同时编译数个Java源文件 D.javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD 3.下列标识符不合法的有()A.newB.$UsdollarsC.1234D.car.taxi 答案:ACD 4.下列说法错误的有() A.数组是一种对象 B.数组属于一种原生类 C.intnumber=[]={31,23,33,43,35,63} D.数组的大小可以任意改变 答案:BCD 5.不能用来修饰interface的有() A.private B.public C.protected D.static 答案:ACD

2020年华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看

DBA数据库管理员JAVA程序员架构师必看 一、技术问题部分(数据库部分) 1、表空间的管理方式有哪几种? 数据字典管理方式 本地文件管理方式 2、谈谈你对索引的理解? 索引是若干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定 位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。 3、说说索引的组成? 索引列、rowid 4、分区表用过么?谈谈分区表的应用? 分区表在对表的DML的并行处理上有极大得优势,而且可以一部分设为只读,用 在销售记录,医院处方等地方!! 5、你对分区表的理解?怎样截断分区表一个分区的记录? 一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分 区分区的行 分区表中的每一个分区为一个段,可各自位于不同的表空间中 对于同时能够使用几个进程进行查询或操作的大型表分区非常有用 alter table table_name truncate partition partition_name; 6、物理文件有哪几种?控制文件包含了什么信息? 1)数据文件2)控制文件3)日志文件 包含维护和验证有选举权据库完整性的必要信息、例如,控制文件用于识别数据文 件和重做日志文件,一个有选举权据库至少需要一个控制文件 7、表空间用完了如何增加? 三种种扩展方式: 1 增加数据文件alter tablespace name add datafile ,路径? size 4M; 2 扩展数据文件大小alter database datafile ,路径? resize 4M; 3 把数据文件设为自动增长 alter database datafile ,路径? autoextend on next 1M max size 20M; 8、SGA包含几部分? Shared pool(共享池),DataBase Buffer Cache(数据缓冲区) Redo Log Buffer(重做日志缓冲区), Large Pool,大池,JAVA池。 9、DECODE函数的用法? DECODE的语法:DECODE(value,if1,then1,if2,then2,if3,then3,...,else),表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。初看一下,DECODE 只能做等于测试,但刚才也看到了,我们通过一些函数或计算替代value,是可以使DECODE函数具备大于、小于或等于功能。还可以转化表结构! 10、DELETE和TRUNCATE的区别?

华为java笔试题以及答案

最新华为java笔试题以及答案 华为作为世界500强企业之一,每年都会在各省市招募大量人才,因为其巨大的威望和声誉以及较好的薪酬,近年来华为成为很多学子争相进入的理想之地。尤其对于很多学计算机技术的人来说,更是一大吸引之地。然而,这么大的公司可不是想进就能进的。多年来,华为对人才的要求都很高,类别也多,已形成了完整的人才招聘体系。想进去,就需要各渠道想办法,首先要过笔试。本小编在此整理了华为java笔试题,以供大家参考: 一、单项选择题 1.下列运算符合法的是() A.&&B.<>C.ifD.:= 答案:A 2.下列语句哪一个正确() A.Java程序经编译后会产生machinecode B.Java程序经编译后会产生bytecode C.Java程序经编译后会产生DLL D.以上都不正确

答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是() A.java.sqlB.java.awtC.https://www.360docs.net/doc/932358255.html,ngD.java.swing 答案:A 5.Java是从()语言改进重新设计。 A.AdaB.C++C.PasacalD.BASIC 答案:B 6.执行如下程序代码 a=0;c=0; do{

--c; a=a-1; }while(a>0); 后,C的值是() A.0B.1C.-1D.死循环 答案:C 7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数

华为java笔试题目一

华为java笔试题目一 华为java题一单项选择题 1.java是从()语言改进重新设计。 a.ada b.c++ c.pasacal d.basic 答案:b 2.下列语句哪一个正确() a. java程序经编译后会产生machine code b. java程序经编译后会产生byte code c. java程序经编译后会产生dll d.以上都不正确答案:b 3.下列说法正确的有() a. class中的constructor不可省略 b. constructor 必须与class同名,但方法不能与class同名 c. constructor在一个对象被new时执 行 d.一个class只能定义一个constructor 答案:c 4.提供java存取数据库能力的包是() a.java.sql b.java.awt c.https://www.360docs.net/doc/932358255.html,ng d.java.swing 答案:a 5.下列运算符合法的是() a.& b.<> c.if d.:= 答案:a 6.执行如下程序代码a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,c的值是() a.0 b.1 c.-1 d.死循环答案:c 7.下列哪一种叙述是正确的() a. abstract修饰符可修饰字段、方法和类 b.抽象方法的body部分必须用一对大括号{ }包住 c.声明抽象方法,大括号可有 可无 d.声明抽象方法不可写出大括号答案:d 8.下列语句正确的是() a.形式参数可被视为local variable b.形式参数可被字段修饰符修饰 c.形式参数为方法被调用时,真正被传递的参数 d.形式参 数不可以是对象答案:a 9.下列哪种说法是正确的() a.实例方法可直接调用超类的实例方法 b.实 例方法可直接调用超类的类方法 c.实例方法可直接调用其他类的实例方法 d.实例方法可直接调用本类的类方法答案:d 二、多项选择题1.java程序的种类有() a.类(class) b.applet c.application

华为java笔试面试题2014-_-

华为Java笔试题+数据库题123 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor答案:C 4.提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.360docs.net/doc/932358255.html,ng D.java.swing答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:=答案:A 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环答案:C 7.下列哪一种叙述是正确的() A. abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号答案:D 8.下列语句正确的是() A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象答案:A 9.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法答案:D 二、多项选择题 1.Java程序的种类有() A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有() A.环境变量可在编译source code时指定

华为与IBMJAVA面试题

JAVA面试题最全集 一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。 3.数据类型之间的转换 如何将数值型字符转换为数字(Integer,Double) 如何将数字转换为字符 如何取小数点前两位,并四舍五入。 4.日期和时间 如何取得年月日,小时分秒 如何取得从1970年到现在的毫秒数 如何获取某个日期是当月的最后一天 如何格式化日期 5.数组和集合 6.文件和目录(I/O)操作 如何列出某个目录下的所有文件 如何列出某个目录下的所有子目录 判断一个文件或目录是否存在 如何读写文件 7.Java多态的实现(继承、重载、覆盖) 8.编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。 9.Java中访问数据库的步骤,Statement和PreparedStatement之间的区别。 10.找出下列代码可能存在的错误,并说明原因: 二、JSP&Servlet技术 1.描述JSP和Servlet的区别、共同点、各自应用的范围 2.在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选那些字符(< > & “”) 3.在JSP中如何读取客户端的请求,如何访问CGI变量,如何确定某个Jsp文件的真实路径。 4.描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。 5.列出Jsp中包含外部文件的方式,两者有何区别。 6.说明Jsp中errorPage的作用,应用范围。 7.介绍在Jsp中如何使用JavaBeans。 8.简单介绍JSP的标记库 9.Jsp和Servlet中的请求转发分别如何实现。 三、J2EE相关知识 1.介绍J2EE、J2SE、J2SE的区别。 2.J2EE是一种技术还是一种平台,他提供了那些技术。 3.什么是Application Server,它有什么功能和优点。

华为java笔试题

华为Java笔试题一单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C

4.提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.360docs.net/doc/932358255.html,ng D.java.swing 答案:A 5.下列运算符合法的是() A.& B.<> C.if D.:= 答案:A 6.执行如下程序代码a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环答案:C ------------------ 这一题如果是while(a>0){ --c;a=a-1; }的话就是选A ------------------ 如题如果把题目中的--c 改成c--的话结果还是一

7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是()------------------ A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 答案:A -------------- JAVA传递参数有两种方式:值传递和引用传递 值传递是传递数据:象基本数据类型都是值传递 引用传递是把形参和实参的指针指向了堆中的同一对象 ------------------------- 对于形式参数只能用final修饰符,其它任何修饰符都会引起编译器错误。但是用这个修饰符也有一定的限制,就是在方法中不能对参数做任何修改。

华为java笔试题大全

华为java笔试题 QUESTION NO: 1 publicclass Test1 { public static void changeStr(String str) { str=”welcome”; } Public static void main(String[] args) { String str=”1234″; changeStr(str); System.out.println(str); } } //输出结果:1234 //这里虽然是一个静态方法,但是里面的变量是一个局部变量,

//所以这里不因为是静态方法,就误认为里面的变量也是静态变量了 QUESTION NO:2 Public class Test2 { Static boolean foo(char c) { System.out.print(c); Return true; } Public static void main(String[] argv) { int i = 0; //for(65;88&&(i<2);67) for (foo(‘A’);foo(‘B’)&& (i < 2) ; foo(‘C’)){ i++; foo(‘D’); } }

} /* What is the result? A. ABDCBDCB B. ABCDABCD C. Compilation fails. D. An exception is thrown at runtime. //输出结果是:ABDCBDCB 分析:FOR循环里面讲究的条件要为真,与你的判断式是什么没有关系 就像这里,虽然是打印的字母,但是却不是false,所以可以执行 第一次进行循环: foo(‘A’)打印字母A,(注:这里不是false条件就默认为true条件) foo(‘B’)打印字母B,i=0,比较(i < 2),条件为true,进行循环体,foo(‘D’)打印D foo(‘C’)打印字母C

华为java笔试题

华为java笔试题 单项选择题 1.java是从( )语言改进重新设计。 a.ada b.c c.pasacal d.basic 答案:b 2.下列语句哪一个正确( ) a. java程序经编译后会产生machine code b. java程序经编译后会产生byte code c. java程序经编译后会产生dll d. 以上都不正确答案:b 3.下列说法正确的有( ) a. class中的constructor不可省略 b. constructor必须与class同名,但方法不能与class同名 c. constructor在一个对象被new时执行 d. 一个class只能定义一个constructor 答案:c 4.提供java存取数据库能力的包是( ) a.java.sql b.java.awt https://www.360docs.net/doc/932358255.html,ng d.java.swing 答案:a 5.下列运算符合法的是( ) a.& b.<> c.if d.:= 答案:a 6.执行如下程序代码a=0;c=0; do{ —c; a=a-1; }while(a>0); 后,c的值是( ) a.0 b.1 c.-1 d.死循环答案:c 7.下列哪一种叙述是正确的( ) a. abstract修饰符可修饰字段、方法和类 b. 抽象方法的body部分必须用一对大括号{ }包住 c. 声明抽象方法,大括号可有可无 d. 声明抽象方法不可写出大括号 答案:d 8.下列语句正确的是( ) a. 形式参数可被视为local variable b. 形式参数可被字段修饰符修饰 c. 形式参数为方法被调用时,真正被传递的参数 d. 形式参数不可以是对象答案:a 9.下列哪种说法是正确的( ) a. 实例方法可直接调用超类的实例方法 b. 实例方法可直接调用超类的类方法 c. 实例方法可直接调用其他类的实例方法 d. 实例方法可直接调用本类的类方法答案:d 二、多项选择题 1.java程序的种类有( ) a.类(class) b.applet c.application d.servlet 2.下列说法正确的有( ) a. 环境变量可在编译source code时指定 b. 在编译程序时,所能指定的环境变量不包括class path c. javac一次可同时编译数个java源文件 d. javac.exe能指定编译结果要置于哪个目录(directory) 答案:bcd

华为的java电话面试10题

华为的j a v a电话面试10 题 标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

1、有哪些数据类型 Java定义了8种简单类型:byte、short、int、long、char、float、double和boolean 2、有几种访问机制? 同一个类同一个包不同包的子类不同包的非子类 private yes default yes yes protected yes yes yes public yes yes yes yes 3、JDBC的过程 1. 加载JDBC驱动程序 Class.forName("com.mysql.jdbc.Driver");//MySQL的加载JDBC驱动程序的方法 Class.forName("org.postgresql.Driver");//PostgreSQL的加载JDBC驱动程序的方法 Class.forName("oracle.jdbc.driver.OracleDriver");//Oracle的加载JDBC驱动程序的方法 Class.forName("https://www.360docs.net/doc/932358255.html,.DB2Driver");//DB2的加载JDBC驱动程序的方法 Class.forName("com.sybase.jdbc2.jdbc.SybDriver");//Sybase的加载JDBC驱动程序的方法 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//SQLServer的加载JDBC驱动程序的方法 2. 建立数据库连接 与MySQL数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:mysql://MyDbComputerNameOrIP:3306/myDBName",ID,Pwd); 与PostgreSQL数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:postgresql://MyDbComputerNameOrIP:3306/myDBName",ID,Pwd); 与Oracle数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL",ID,Pwd); 与Sybase数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:sybase:Tds:MyDbComputerNameOrIP:2638",ID,Pwd); 与SQL Server数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master ",ID,Pwd); 与DB1数据库建立连接的方法:Connection con=DriverManager.getConnection ("jdbc:db2://MyDbComputerNameOrIP/myDBName",ID,Pwd); 3. 创建并执行SQL语句

java华为面试题

JA V A方面 1 面向对象的特征有哪些方面 2 String是最基本的数据类型吗? 3 int 和Integer 有什么区别 4 String 和StringBuffer的区别 5运行时异常与一般异常有何异同? 6 说出一些常用的类,包,接口,请各举5个 7 说出ArrayList,Vector, LinkedList的存储性能和特性 8设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 9.JSP的内置对象及方法。 10.用socket通讯写出客户端和服务器端的通讯,要求客户发送数据后能够回显相同的数据。 11说出Servlet的生命周期,并说出Servlet和CGI的区别。 12.EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。 13.EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的? 14.说出数据连接池的工作机制是什么? 15同步和异步有和异同,在什么情况下分别使用他们?举例说明。 16应用服务器有那些? 17你所知道的集合类都有哪些?主要方法? 18给你一个:驱动程序A,数据源名称为B,用户名称为C,密码为D,数据库表为T,请用JDBC检索出表T的所有数据。 19.说出在JSP页面里是怎么分页的? 数据库方面: 1.存储过程和函数的区别 2.事务是什么? 3.游标的作用?如何知道游标已经到了最后? 4.触发器分为事前触发和事后触发,这两种触发有和区别。语句级触发和 行级触发有何区别。

相关文档
最新文档