华为JAVA编程规范试题

合集下载

华为的Java笔试题目

华为的Java笔试题目

华为的Java笔试题目1.ip地址的编码分为哪俩部分?ip地址由两部分组成,网络号和主机号。

不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。

2.用户输入m,n值,从1至n开始顺序循环数数,每数到m输出该数值,直至全部输出。

写出c程序。

循环链表,用取余*作做3.不能做switch()的参数类型是:switch的参数不能为实型。

4.static有什么用途?(请至少说明两种)a.限制变量的作用域b.设置变量的存储域7.引用与指针有什么区别?a引用必须被初始化,指针不必。

b引用初始化以后不能被改变,指针可以改变所指的对象。

c不存在指向空值的引用,但是存在指向空值的指针。

8.描述实时系统的基本特*在特定时间内完成特定的任务,实时*与可靠*9.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?全局变量储存在静态数据库,局部变量在堆栈10.什么是平衡二叉树?左右子树都是平衡二叉树且左右子树的深度差值的绝对值不大于111.堆栈溢出一般是由什么原因导致的?没有回收垃圾资源12.什么函数不能声明为虚函数?constructor13.冒泡排序算法的时间复杂度是什么?o(n^2)14.写出floatx与“零值”比较的if语句。

if(x>0.000001&&x<-0.000001)16.inter采用哪种网络协议?该协议的主要层次结构? tcp/ip应用层/传输层/网络层/数据链路层/物理层17.inter物理地址和ip地址转换采用什么协议? arp(addressresolutionprotocol)(地址解析?f?)。

java华为面试题

java华为面试题

JA V A方面1 面向对象的特征有哪些方面1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。

抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。

抽象包括两个方面,一是过程抽象,二是数据抽象。

2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。

对象的一个新类可以从现有的类中派生,这个过程称为类继承。

新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。

派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。

3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。

面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。

4. 多态性:多态性是指允许不同类的对象对同一消息作出响应。

多态性包括参数化多态性和包含多态性。

多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

2 String是最基本的数据类型吗?不是,是对象3 int 和Integer 有什么区别int是基本数据类型,intereg是基础数据类型包装类。

4 String 和StringBuffer的区别前者是对一串字符进行操作,不可变类,后者三可变类。

5运行时异常与一般异常有何异同?异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。

java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

6 说出一些常用的类,包,接口,请各举5个类:ArrayList PreparedStatement Connection String HttpServlet………包:java,sql java.util, ng, java.io, javax.httpServlet,java.math,java.text,java.awt 接口:HttpSessionAttributeListener, ActionListener InputStream Collection7 说出ArrayList,Vector, LinkedList的存储性能和特性ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。

华为java笔试题v2.0

华为java笔试题v2.0
二月份028
二月份049
三月份038
1)选择(部门为“02的所有记录”):
2)插入(mon为“四月份”,dep为“04”,yj为7):
3)删除(mon为“四月份”,dep为“04”的所有记录):
4)更新(dep为“04”的记录,yj更新为8):
5)模糊查询(所有mon里包含“二月”两个字的所有记录):
如下图所示:
请用javascript实现此功能。(提示:可以根据单击事件(event)拿到事件源对象即被单击的复选框)(5分)
<script language="javascript">
//全选操作
function checkAll(){
}
//子条目选中操作(需要完成功能:只要有一个以上的子条目未被选中,“全选\全不选”复//选框就未选中,如果所有子条目均被选中,“全选\全不选”就为选中状态)
insert into T select * from T1;
--(Assume T1 exists)
B.insert into T select distinct from T
C. insert into T1 select distinct * from T;
delete from T;
insert into T select * from T1;
--(Assume T1 exists)
D.delete from T having count(id) > 1
二、编程题:
1、题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
请补充完整test方法体。n为输入的参数,结果返回类似“90=2*3*3*5”的字符串。(5分)

华为JAVA的考试题

华为JAVA的考试题
预备知识2:二叉树是一种特殊的树型结构,它的特点是每个结点至多只有二棵子树,并且,二叉树的子树有左右之分,其次序不能任意颠倒。中序遍历的顺序:(1)中序遍历左子树;(2)访问根结点;(3)中序遍历右子树。
题目内容:生产者从输入文件(文件名通过命令行给定,参见下述的“命令行使用接口”的“文件名”参数)中读取字符串结点信息并放入缓冲区,消费者从缓冲区中获取结点信息、创建二叉树、中序遍历生成的二叉树并在控制台打印出遍历的结点字符串(以逗号分隔)。
命令行使用接口:
Java BinaryTreeSort 文件名
“BinaryTreeSort”参数是你将要实现的主程序类名,该类有main方法public static void main(String[] args),是程序的入口;
“文件名”参数就是包含结点字符串的文件,例如source.txt,文件位于与运行程序相同目录下,无需考虑文件路径的问题。
详细说明:
(1) 要读入的文件格式参见以下例子(参见随试题一起提供的附件文件source.txt):
12a,445,dd4,ddf,ddfg,33
以英文逗号“,”作为结点间分隔符,文件以回车换行符结束,中间无回车换行符,结点数目不定。注意所有字符仅包含字母和数字,不含中文字符、不含全角字符。
(2) 生产者线程从文件中读取字符串结点并存入缓冲区,缓冲区(Buffer)中允许的最大结点数为5。
(3) 消费者线程从缓冲区中读取结点信息,并创建二叉树。生成的二叉树应符合以下要求:中序遍历的结果与各结点字符串按ASCII字典顺序排序的结果一致。最后请在控制台打印出中序遍历的结果并结束线程。例如以上例子的中序遍历结果为:12a,33,445,dd4,ddf,ddfg

华为JAVA笔试题

华为JAVA笔试题

华为公司 java 笔试题第一部分:选择题QUESTION NO: 11、public class Test {public static void changeStr(String str){str="welcome";}public static void main(String[] args) {String str="1234";changeStr(str);System.out.println(str);}}Please write the output result :QUESTION NO:21. public class Test {2. static boolean foo(char c) {3. System.out.print(c);4. return true;5. }6. public static void main( String[] argv ) {7. int i =0;8. for ( foo('A'); foo('B')&&(i<2); foo('C')){9. i++ ;10. foo('D');12. }13. }14. }What is the result?A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception is thrown at runtime.1. class A {2. protected int method1(int a, int b) { return 0; }3. }Which two are valid in a class that extends class A? (Choose two)A. public int method1(int a, int b) { return 0; }B. private int method1(int a, int b) { return 0; }C. private int method1(int a, long b) { return 0; }D. public short method1(int a, int b) { return 0; }E. static protected int method1(int a, int b) { return 0; }QUESTION NO: 41. public class Outer{2. public void someOuterMethod() {3. // Line 34. }5. public class Inner{}6. public static void main( String[]argv ) {7. Outer o = new Outer();8. // Line 89. }10. }Which instantiates an instance of Inner?A. new Inner(); // At line 3B. new Inner(); // At line 8C. new o.Inner(); // At line 8D. new Outer.Inner(); // At line 8//new Outer().new Inner()QUESTION NO: 5Which method is used by a servlet to place its session ID in a URL that is wri tten to the servlet’s response output stream?A. The encodeURL method of the HttpServletRequest interface.B. The encodeURL method of the HttpServletResponse interface.C. The rewriteURL method of the HttpServletRequest interface.D. The rewriteURL method of the HttpServletResponse interface.Which two are equivalent? (Choose two)A. <%= YoshiBean.size%>B. <%= YoshiBean.getSize()%>C. <%= YoshiBean.getProperty("size")%>D. <jsp:getProperty id="YoshiBean" param="size"/>E. <jsp:getProperty name="YoshiBean" param="size"/>F. <jsp:getProperty id="YoshiBean" property="size"/>G. <jsp:getProperty name="YoshiBean" property="size"/>QUESTION NO: 7Which of the following statements regarding the lifecycle of a session bean are correct?1. ng.IllegalStateException is thrown if SessionContext.getEJBObject() is invoked when a stateful session bean instance is passivated.2. SessionContext.getRollbackOnly() does not throw an exception when a session bean with bean-managed transaction demarcation is activated.3. An exception is not thrown when SessionContext.getUserTransaction() is called in the afterBegin method of a bean with container-managed transactions.4. JNDI access to java:comp/env is permitted in all the SessionSynchronization methods of a stateful session bean with container-managed transaction demarcation.5. Accessing resource managers in the SessionSynchronization.afterBegin method of a stateful session bean with bean-managed transaction does not throw an exception.第二部分:概念题1.描述Struts体系结构?对应各个部分的开发工作主要包括哪些?2. XML包括哪些解释技术,区别是什么?3. JSP有哪些内置对象和动作?它们的作用分别是什么?4、SQL问答题SELECT * FROM TABLE和SELECT * FROM TABLEWHERE NAME LIKE '%%' AND ADDR LIKE '%%'AND (1_ADDR LIKE '%%' OR 2_ADDR LIKE '%%'OR 3_ADDR LIKE '%%' OR 4_ADDR LIKE '%%' )的检索结果为何不同?5、SQL问答题表结构:1、表名:g_cardapply字段(字段名/类型/长度):g_applyno varchar 8;//申请单号(关键字)g_applydate bigint 8;//申请日期g_state varchar 2;//申请状态2、表名:g_cardapplydetail字段(字段名/类型/长度):g_applyno varchar 8;//申请单号(关键字)g_name varchar 30;//申请人姓名g_idcard varchar 18;//申请人身份证号g_state varchar 2;//申请状态其中,两个表的关联字段为申请单号。

华为java笔试题目一

华为java笔试题目一

华为java笔试题目一华为java题一单项选择题 1.java是从()语言改进重新设计。

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

华为java面试题集第3部分编程题

华为java面试题集第3部分编程题

1.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,,提供reset答案(1) public static String[] splitStringByComma(String source){ if(source==null||source.trim().equals(""))return null;StringTokenizer commaToker = new StringTokenizer(source,",");String[] result = new String[commaToker.countTokens()];int i=0;while(commaToker.hasMoreTokens()){result[i] = commaToker.nextToken();i++;}return result;}循环遍历String数组Integer.parseInt(String s)变成int类型组成int数组Arrays.sort(int[] a),a数组升序降序可以从尾部开始输出2.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。

3、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么? 答:父类:package test;public class FatherClass{public FatherClass(){System.out.println("FatherClass Create");}}子类:package test;import test.FatherClass;public class ChildClass extends FatherClass{public ChildClass()System.out.println("ChildClass Create"); }public static void main(String[] args) {FatherClass fc = new FatherClass(); ChildClass cc = new ChildClass();}}输出结果:C:>java test.ChildClassFatherClass CreateFatherClass CreateChildClass Create4、内部类的实现方式?答:示例代码如下:package test;public class OuterClass{** class InterClass{public InterClass(){System.out.println("InterClass Create"); }}public OuterClass(){InterClass ic = new InterClass(); System.out.println("OuterClass Create"); }public static void main(String[] args) {OuterClass oc = new OuterClass();}}输出结果:C:>java test/OuterClassInterClass CreateOuterClass Create再一个例题:public class OuterClass {** double d1 = 1.0;//insert code here}You need to insert an inner class declaration at line 3. Which two inner class declarations arevalid?(Choose two.)A. class InnerOne{public static double methoda() {return d1;}}B. public class InnerOne{static double methoda() {return d1;}}C. ** class InnerOne{double methoda() {return d1;}}D. static class InnerOne{protected double methoda() {return d1;}}E. abstract class InnerOne{public abstract double methoda();}说明如下:一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。

华为JAVA编程规范试题-推荐下载

华为JAVA编程规范试题-推荐下载

第 2 页, 共 16 页
2、下面说法或者语句不符合公司编程规范的排版要求的是:
A.逗号、分号只在后面加空格; 比较操作符, 赋值操作符"="、 "+=",算术操
作符"+"、"%",逻辑操作符"&&"、"&",位域操作符"<<"、"^"等双目操作符
的前后加空格; "!"、"~"、"++"、"--"、"&"(地址运算符)等单目操作符
C. if ( writeToFile ) { writeFileThread.interrupt(); }
D. if (a >= b && c > d) { //program code }
E. 在长语句中,如果需要加的空格非常多,那么应该保持整体清晰,而在局 部不加空格。给操作符留空格时不要连续留两个以上空格
文档密级:
JAVA 编程规范试题
一、判断题(每题 2 分,共 28 分)
1、if, for, do, while, case, switch, default 等语句自占一行,且 if, for, do, while, switch, case 等语句的执行语句无论多少都要加括号{}。
2、包的注释内容要求包括:简述本包的作用、详细描述本包的内容、产品模块
性。不再有用的注释不要删除,使用@deprecated 表示此注释无效。
B.避免在注释中使用缩写,特别是不常用缩写;但是,注释也是可使用缩写,

华为Java上机考试题

华为Java上机考试题

华为Java上机考试题华为Java上机考试题Java是面向对象语言,Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。

下面yjbys店铺为大家提供的是Java上机考试题及答案,希望对大家有所帮助!1.程序实现目标:输入一个字符串,将其各个字符对应的ASCII 值加5后,输出结果。

程序要求:该字符串只包含小写字母,若其值加5后的字符值大于'z',将其转换成从a开始的字符。

[java] view plain?package com.xcbeyond;/*** @author xcbeyond* 2015-5-7下午10:37:43* 1.程序实现目标:输入一个字符串,将其各个字符对应的ASCII 值加5后,输出结果。

* 程序要求:该字符串只包含小写字母,若其值加5后的字符值大于'z',将其转换成从a开始的字符。

*/public class StringParseASCII {public static void main(String[] args) {System.out.print(stringParseASCII("abx"));}public static String stringParseASCII(String str){StringBuffer result = new StringBuffer();char tmp;for(int i = 0;itmp = (char)(str.charAt(i)+5);if(tmp > 'z') {result.append('a');}else {result.append(tmp);}}return result.toString();}}2.程序实现目标:求一个整型数组中元素的平均值,并统计其中大于和小于此平均值的元素的个数。

程序要求:输入:整型数组中的元素个数及各个元素。

华为研发编程试题及答案

华为研发编程试题及答案

华为研发编程试题及答案1. 编程题:编写一个函数,实现字符串反转的功能。

答案:```pythondef reverse_string(s):return s[::-1]```2. 编程题:实现一个函数,计算给定整数数组中所有元素的和。

答案:```pythondef sum_of_elements(arr):return sum(arr)```3. 编程题:编写一个程序,判断一个整数是否为素数。

答案:```pythondef is_prime(n):if n <= 1:return Falsefor i in range(2, int(n0.5) + 1):if n % i == 0:return Falsereturn True```4. 编程题:实现一个函数,用于计算斐波那契数列的第n项。

答案:```pythondef fibonacci(n):if n <= 1:return na, b = 0, 1for _ in range(2, n + 1):a, b = b, a + breturn b```5. 编程题:编写一个函数,实现二分查找算法。

答案:```pythondef binary_search(arr, target):low, high = 0, len(arr) - 1while low <= high:mid = (low + high) // 2if arr[mid] < target:low = mid + 1elif arr[mid] > target:high = mid - 1else:return midreturn -1```6. 编程题:实现一个函数,用于检测一个链表是否为回文结构。

答案:```pythonclass ListNode:def __init__(self, val=0, next=None):self.val = valself.next = nextdef is_palindrome(head):if not head or not head.next:return Trueslow, fast = head, headwhile fast and fast.next:slow = slow.nextfast = fast.next.nextprev, curr = None, slowwhile curr:next_temp = curr.nextcurr.next = prevprev = currcurr = next_templeft, right = head, prevwhile left and right:if left.val != right.val:return Falseleft = left.nextright = right.nextreturn True```7. 编程题:编写一个函数,实现冒泡排序算法。

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

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.如果要操作少量的数据用= String2.单线程操作字符串缓冲区下操作大量数据= StringBuilder3.多线程操作字符串缓冲区下操作大量数据= StringBuffer2、静态变量和实例变量的区别?能在静态方法中调用非静态变量吗?静态变量属于类,该类不生产对象,通过类名就可以调用静态变量。

Java编程规范试题

Java编程规范试题

JAVA编程规范--试题姓名:工号:部门:成绩:一. 判断题(共15题,每题2分,直接在括号内打“√”或“×”)1、任何时候都不要使接口可以序列化。

x2、相对独立的程序块之间、变量说明之后必须加空行。

√3、当程序需要释放对象的时候,应该手工调用finalize方法以释放对象。

x4、公司的规范要求注释率是20%以上,并且必须有助于对程序的阅读理解。

x5、为了程序更加简洁,我们应该尽量使用下面的方式来赋值:a = b = 1 。

x6、每个类都需要定义构建器。

x7、类名、方法名、属性名的命名,都应该使用意义完整的英文描述。

√8、main() 方法的定义是public static void main(String args[])。

x9、常量名应该使用全大写,英文单词之间用下划线或者-分隔开。

并且,常量应该使用final static修饰。

x10、公有方法参数名可以和属性名相同,但局部变量不能和属性名相同。

√11、一两行代码就能完成的功能没有必要编写方法实现。

x12、对于模块间接口方法的参数的合法性检查,调用者和被调用者都应该对参数进行合法性检查。

x13、运行期异常使用RuntimeException的子类来表示,必须在方法声明上加throws子句。

x非运行期异常是从Exception继承而来的,不用在可能抛出异常的方法声明上加throws 子句。

x14、使用ObjectStream 的方法后,调用release() ,释放对象。

X15、减小单个方法的复杂度,使用的 if, while, for, switch 语句要在10个以内。

√二、单项选择题(共23题,每题2分)( c )1、排版时,代码缩进应该采用的方式是:(A)Tab缩进(B)2个空格缩进(C)4个空格缩进(D)8个空格缩进( c )2、下面哪条语句是不符合规范的:(A)int count = 0;int num = 0;....;//program codeif (count == num){....;}(B)long count = 0L;long num = 0L;....;//program codeif (count == num){....;}(C)float count = 0f;float num = 0f;....;//program codeif (count == num){....;}(D)以上语句都符合规范( b )3、对命名规范描述错误的是:(A)、包名单词的首字母应该大写。

java华为可信考试题库及答案

java华为可信考试题库及答案

java华为可信考试题库及答案1. 以下哪个选项是Java中用于定义类的关键字?A. interfaceB. classC. structD. enum答案:B2. Java中,哪个关键字用于声明一个方法?A. functionB. methodC. defD. void答案:D3. 在Java中,下列哪个关键字用于实现多态性?A. extendsB. implementsC. overrideD. abstract答案:A4. Java中,哪个关键字用于定义一个接口?A. classB. structC. interfaceD. package答案:C5. 在Java中,下列哪个关键字用于声明一个变量为静态的?A. staticB. finalC. volatileD. transient答案:A6. Java中,哪个关键字用于声明一个异常?A. throwB. throwsC. catchD. exception答案:B7. 在Java中,哪个关键字用于声明一个方法为同步的?A. synchronizedB. lockC. mutexD. thread答案:A8. Java中,哪个关键字用于声明一个方法为抽象的?A. abstractB. virtualC. overrideD. interface答案:A9. 在Java中,哪个关键字用于声明一个变量为常量?A. constB. finalC. staticD. immutable答案:B10. Java中,哪个关键字用于声明一个内部类?A. innerB. nestedC. classD. private答案:C11. 在Java中,哪个关键字用于实现单例模式?A. synchronizedB. volatileC. staticD. singleton答案:C12. Java中,哪个关键字用于声明一个线程?A. threadB. runnableC. executorD. process答案:B13. 在Java中,哪个关键字用于声明一个方法为重写的?A. overrideB. extendsC. implementsD. abstract答案:A14. Java中,哪个关键字用于声明一个变量为可变的?A. mutableB. finalC. volatileD. transient答案:C15. 在Java中,哪个关键字用于声明一个方法为私有的?A. privateB. protectedC. publicD. default答案:A16. Java中,哪个关键字用于声明一个变量为易失的?A. volatileB. transientC. mutableD. immutable答案:B17. 在Java中,哪个关键字用于声明一个方法为受保护的?A. privateB. protectedC. publicD. default答案:B18. Java中,哪个关键字用于声明一个变量为默认访问权限的?A. privateB. protectedC. publicD. default答案:D19. 在Java中,哪个关键字用于声明一个方法为公开的?A. privateB. protectedC. publicD. default答案:C20. Java中,哪个关键字用于声明一个类为最终的?A. finalB. abstractC. sealedD. immutable答案:A。

华为java笔试题目(2)

华为java笔试题目(2)

华为java笔试题目(2)三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。

( ) 答案:正确2.Unicode是用16位来表示一个字的。

( ) 答案:正确3.原生类中的数据类型均可任意转换。

( ) 答案:错误1、给定如下JAVA 程序片断: class A{ public A(){ system.out.println(“A”); } } class B extends A{ public B(){System.out.println(“B”);} public static void main(String[] args){ B b=new B();} } 上述程序将( ).(选择一项)A、不能通过编译B、通过编译,输出为: A BC、通过编译,输出为: BD、通过编译,输出为: A2、某一java程序中有如下代码:Datalnputstream din=newDataInputstream(new BufferedInputstream (new FileInputstream(“employee.dat”) )); 假设在employee.dat文件中只有如下一段字符:abcdefg。

则:System.out.println(din)在屏幕上打印().(选择一项)A、AB、BC、97D、983、给定java代码片段,如下:int i=0,j=-1; switch(i){ case 0,1:j=1; case 2:j=2; } System.out.print( j= +j); 编译运行,正确的是()。

(选择一项)A、程序编译出错B、j=1C、j=2D、j=04、在Java中,下面关于构造函数的描述正确的是()。

(选择一项)A、类必须有显式构造函数B、它的返回类型是voidC、它和类有相同的名称,但它不能带任何参数D、以上皆非5、在JAVA编程中,Swing包中的组件处理事件时,下面()是正确的。

华为od机试题库java

华为od机试题库java

华为od机试题库java华为OD机试题库Java一、Java基础1. Java语言概述Java被誉为“计算机世界的第一语言”,它是一种广泛应用于企业级应用开发的高级编程语言。

Java具有平台无关性、面向对象、自动内存管理等特点,因此广泛应用于网页开发、桌面应用、游戏开发、移动应用和大数据处理等方面。

2. Java的基本语法Java的基本语法包括数据类型、变量、运算符、流程控制语句、类、对象、方法等。

掌握Java的基本语法是学习Java编程的第一步。

3. Java中的类和对象Java是一种面向对象的编程语言,类和对象是Java编程的基础。

通过定义类和创建对象,可以实现对数据和行为的封装,从而简化程序的设计和维护。

4. Java中的继承和多态继承是一种面向对象的重要机制,它可以使子类获得父类的属性和方法。

Java中的多态性是继承的一种体现,它可以通过父类引用指向子类对象,实现动态绑定和方法的重写。

5. Java中的异常处理异常是Java中的一种错误机制,它通过抛出和捕获异常来实现程序的控制和错误处理。

Java中的异常处理机制可以帮助程序员更好地理解程序的运行逻辑和调试程序。

二、Java高级1. 集合框架Java的集合框架是一组接口、类和算法,用于实现和操作集合、列表、队列、栈等数据结构。

掌握Java的集合框架可以使程序设计更加简洁高效。

2. IO流Java中的IO流是一种输入输出机制,用于在程序和外部世界之间进行数据交换。

IO流分为字符流和字节流,它们可以用于文件读写、网络传输、序列化等方面。

3. 线程线程是Java中的一种并发机制,它可以让程序在多个任务之间切换执行。

Java的线程机制包括线程的创建、启动、挂起、恢复和停止等操作,掌握Java的线程机制可以实现并发编程和提高程序性能。

4. 反射Java中的反射机制是一种能够在运行时检查和操作类、方法、属性等对象的能力。

通过Java的反射机制,在程序运行时可以动态地创建对象、调用方法和获取属性,使程序的开发和配置更加灵活。

华为java笔试题目(3)

华为java笔试题目(3)

华为java笔试题目(3)21、39.给定一个Java程序代码,如下:运行编译后,输出结果是(). (选择一项) pubilc class Test{ int count = 9; pubilc void count1(){ int count = 10; SYstem.out.println( count1 +count); } pubilc void count2(){ SYstem.out.println( count2 +count); } pubilc static void main(String args[]){ Test t =new Twst(); t.count1(); t.count2(); } }A、count1=9 count2=9B、count1=10 count2=9C、count1=10 count2=10D、count1=9 count2=1022、37.给定java代码如下:要使用这段代码能够编译成功,横线处可以填入().(选择两项) pubilc int count(char c,int i,double d){ return______; }A、c*iB、c*(int)dC、(int)c*dD、i*d23、在JAVA编程中,Java编译器会将Java程序转换为()。

(选择一项)A、字节码B、可执行代码C、机器代码D、以上所有选项都不正确24、在J2EE中,下列元素经过排序的集合类是()。

(选择一项)A、LinkedListB、StackC、HashtableD、TreeSet25、9) 分析下面的Java程序:public class yy { public static void main(String[] ards) throws Exception { try { throw new Exception(); }catch(Exception e){ System.out.println( Caught in main() } System.out.println( nothing } } 输出结果为()。

java基础题华为Java面试题集编题

java基础题华为Java面试题集编题

Java经典试题及答案第一,谈谈final, finally, finalize的区别。

final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。

因此一个类不能既被声明为 abstract的,又被声明为final的.将变量或方法声明为final,可以保证它们在使用中不被改变。

被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。

被声明为final的方法也同样只能使用,不能重载。

finally-再异常处理时提供 finally 块来执行任何清除操作.如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。

finalize—方法名。

Java 技术允许使用 finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作.这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的.它是在Object 类中定义的,因此所有的类都继承了它。

子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。

finalize()方法是在垃圾收集器删除对象之前对这个对象调用的.第二,Anonymous Inner Class (匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?匿名的内部类是没有名字的内部类。

不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现.第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。

Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。

Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。

具体可见http: //www.frontfree。

华为JAVA编程规范试题

华为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() 方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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() 方法。

14、判断方法是否是重载,只关注方法名、参数个数、参数类型,不关注方法返回值;二、单选题(每题2分,共36分)1、下面的选项与公司的排版规范不相符的是A.如果语句已足够清晰则括号内侧(即左括号后面和右括号前面)不需要加空格,多重括号间不必加空格,因为在Java语言中括号已是最清晰的标志了。

B.DatabaseKey servicekey = null;key = getServiceKey();currentEventsCount = getCurrentEventsCount();if (currentEventsCount > 0 ){//...program code}C.if ( writeToFile ){writeFileThread.interrupt();}D.if (a >= b && c > d){//program code}E.在长语句中,如果需要加的空格非常多,那么应该保持整体清晰,而在局部不加空格。

给操作符留空格时不要连续留两个以上空格2、下面说法或者语句不符合公司编程规范的排版要求的是:A.逗号、分号只在后面加空格; 比较操作符, 赋值操作符"="、 "+=",算术操作符"+"、"%",逻辑操作符"&&"、"&",位域操作符"<<"、"^"等双目操作符的前后加空格; "!"、"~"、"++"、"--"、"&"(地址运算符)等单目操作符前后不加空格;B.a *= 2;C.x = y&z;D. key--;3、有关各种注释内容,描述错误的是:A.成员变量注释内容:成员变量的意义、目的、功能,可能被用到的地方。

B.公有和保护方法注释内容:列出方法的一句话功能简述、功能详细描述、作者、输入参数、输出参数、返回值、违例等。

C.类和接口的注释内容:类的注释主要是一句话功能简述、功能详细描述,可根据需要列出:版本号、生成日期、作者、内容、功能、与其它类的关系等。

如果一个类存在Bug,请如实说明这些Bug。

D.文件注释内容有:文件名、版权说明、描述信息、生成日期、修改历史。

E.包的注释内容:简述本包的作用、详细描述本包的内容、产品模块名称和版本、公司版权。

4、下面说法正确的是:A.编写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。

不再有用的注释不要删除,使用@deprecated 表示此注释无效。

B.避免在注释中使用缩写,特别是不常用缩写;但是,注释也是可使用缩写,在使用缩写时或之前,应对缩写进行必要的说明。

C.在程序块的结束行下方加注释标记,以表明某程序块的结束。

D.注释应考虑程序易读及外观排版的因素,使用的语言若是中、英兼有的,根据公司国际化的趋势,建议多使用英文。

5、下面说法错误的是:A.一些复杂的代码需要注释说明。

B.顺序实现流程的说明使用1、2、3、4在每个实现步骤部分的代码前面进行注释。

C.注释尽量使用中文注释和中文标点。

方法和类描述的第一句话尽量使用简洁明了的话概括一下功能,然后加以句号。

接下来的部分可以详细描述。

D.方法内的单行注释使用“//”或使用”/*…… */”。

6、下面语句或者描述不符合编程规范命名要求的是:A.OrderInformation, CustomerList, LogManager, LogConfig, SmpTransaction 符合类的命名规范。

B.Bean 类型的,建议命名以Bean 结尾——DataAccessBeanC.常量名使用全大写的英文描述,英文单词之间用下划线分隔开,并且使用static 修饰。

D. private List properties;7、下面的说法正确的是:A.非运行期异常是由外界运行环境决定异常抛出条件的异常,需要调用者明确考虑该异常出现时该如何处理方法,因此在做运行时异常体系设计时要根据错误的性质合理选择JAVA已定义的异常继承关系。

B.异常捕获后,如果不对该异常进行处理,则应该纪录日志或者ex.printStackTrace(),当然,若有特殊原因必须用注释加以说明。

C.文件名为空的时候,在方法内抛出的异常:if ( null = = fileName ){throw new Exception( “exception” );}D.应用程序可以捕获Error这种异常,但不要定义 Error的子类。

8、下列不符合编码规范的是:A. 数据库操作、IO操作等需要使用结束close()的对象必须在try-catch-finally 的finally中close()。

B. 数组声明的时候使用 int[] index ,而不要使用 int index[] 。

C. 所有的类必须重载toString() 方法,返回该类有意义的内容。

D. 自己抛出的异常必须要填写详细的描述信息。

9、下列错误使用异常的做法是()A. 在程序中使用异常处理还是使用错误返回码处理,根据是否有利于程序结构来确定,并且异常和错误码不应该混合使用,推荐使用异常。

B. 一个方法不应抛出太多类型的异常。

throws/exception子句标明的异常最好不要超过三个。

C. 异常捕获尽量不要直接 catch (Exception ex),应该把异常细分处理。

D. 程序内抛出的异常本身就可说明异常的类型、抛出条件,可不填写详细的描述信息。

捕获异常后用exception.toString()取到详细信息后保存。

10、下列说法错误的是:A. 段代码各语句之间有实质性关联并且是完成同一件功能的,那么可考虑把此段代码构造成一个新的方法。

B. 源程序中关系较为紧密的代码应尽可能相邻。

C. 程序中可同时使用错误码和异常进行处理,推荐使用异常。

D. 方法参数建议不超过5个。

11、下面关于构建器的说法中不符合编程规范的是()A.不要在构建器中使用非 final 方法。

B.不要在抽象类的构建器中调用抽象方法。

C.在可能的情况下,总是为类定义一个缺省的构建器。

D.工具类(Utility)可定义私有构建器。

E.不要给保护类类定义 public 构建器。

12、下面的程序片断符合JTest规范的是()A.for(int i = 0; i < MAX_INDEX; i++ ){Apple apple = array[i];}B. public interface ServiceConst{int MAX_BLACK_SIZE = 100;}C.for(int i = 0; i < MAX_INDEX; i++ ){list.add(FruitFactory.getInstance().createApple());}D. String log = message + “Y”;13、下列说法错误的是()A. 尽可能的使用局部变量进行运算。

B. 不要使用静态集合,其内存占用增长没有边界。

C. 一个只有abstract方法、final static 属性的类应该定义成接口。

D. 使用 while(), sleep()代替 wait(), notify()。

14、下面说法错误的是()A.属性名不能与方法名相同。

B.方法重载的时候,一定要注意方法名相同。

C.方法的参数名不要和类中的方法名相同。

D.使用 equals() 比较两个类是否相同。

15、关于说法正确的是:A.使用StringBuffer的时候设置初始容量,推荐设置为1024。

B.使用 StringBuffer代替StringC.在国际化相关的处理逻辑,不要使用String。

D.不要通过名字比较两个对象的类,应该使用 instanceof()E.类调用方法的最大规模建议不超过20个。

16、下列关于finalize()的描述错误的有:A.在 finalize() 方法中一定要调用 super.finalize() 方法B.在 finalize() 方法中的 finally 中调用 super.finalize() 方法;C.不要在 finalize() 方法中删除监听器(Listeners);D.可以在finalize() 方法中删除监听器(Listeners);17、下列描述中不符合编程规范的有:A.不要使用空的for 、if 、while 语句;B.在 clone() 方法中应该而且必须使用 new一个父类的对象。

相关文档
最新文档