华为笔试1.docVIP

  • 0
  • 0
  • 约8.78千字
  • 约 8页
  • 2016-11-27 发布于河南
  • 举报
华为笔试1

华为的JAVA面试题 (后记:没有想到华为的面试题就是非同一般,很多题不是一眼就能够看得出来,至少对我这种鸟来说是这样。对我个人来说,看看这样的题,可能比看《Think In Java》都还要好,因为这里面有很多的东西,都是我们平时没有太在意,或者是只是懂一点皮毛而已,通过做一下这样的练习,把自己不知道、不熟悉的知识点,利用这个机会好好的巩固一下。这些答案是我自己做的,有一些是从网上来的,有一部是自己做的,并且还有一部份没有做完,我不敢保证都对,所以请你在引用的时候,务必通过自己核对一下。当然,我既然能够把这些答案放在这里,那说明我肯定是自己检验了一遍的,也不是那么恐怖的) QUESTION NO: 1 publicclass Test1 { publicstaticvoid changeStr(String str){ str=welcome; } publicstaticvoid main(String[] args) { String str=1234; changeStr(str); System.out.println(str); } } //输出结果:1234 //这里虽然是一个静态方法,但是里面的变量是一个局部变量, //所以这里不因为是静态方法,就误认为里面的变量也是静态变量了 QUESTION NO:2 publicclass Test2 { staticboolean foo(char c) { System.out.print(c); returntrue; } publicstaticvoid main(String[] argv) { int i = 0; //for(65;88(i2);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 第二次循环: foo(B)打印B,i=1,比较(i 2)为true,进行循环体,foo(D)打印D foo(C)打印字母C 第三次循环: foo(B)打印字母B,i=2,比较(i 2)为false,退出循环,得结果 */ QUESTION NO: 3 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; } publicclass B extends A{ /** *@paramargs */ //can not reduce the visibility of the inherited method from A //即不能够使从类A中继续来的方法的可见性降低 //private int method1(int a, int b) { return 0; } //This static method cannot hi

文档评论(0)

1亿VIP精品文档

相关文档