java工程师基础笔试题(一)

 

一.选择和填空  (不定项哦!)

1,如下是一份文件名为Test2.java的源文件,请问,编译该文件之后会生成几份字节码文件

class Test{

class Inner{}

        static class hh{}

}

class Test1{

interface IInterface{}

}

enum Gender{

}

 

A 1   B 3   C 5  D 6

 

2,下列代码C.java

public class Hello{

/**

 *  只是一个测试类

 *  /**

 *     您好,java

 *  **/ 

 *  // 请仔细找茬喔,亲!

 **/

 static public void main(String[] a){

 System.out.println('您好,java'); 

 }

}

 

请标出上面代码错误的地方________________

 

3,下列哪些是java的关键字

A、default 

B、loop

C、do

D、Class

E、null

F、java

G、String

H、false

 

4,下列哪些代码符合java规范(编译不会报错):

Apublic static void main(){} 

Bpublic void method(){

private Integer num; 

   }

Cpublic Method(){

        int num;

System.out.println(num);

   } 

Dprivate $5person=5; 

Epublic int  5i = 100;

 

5,下列哪些变量的声明是正确的?

    Abyte i=128; 

    Bint i = 0220; 

    Cboolean flag = Boolean.TRUE; 

    Dint number = 'A'; 

    Efloat y = 0x123; 

    Flong a = 0x123l; 

   

6,下列代码运行结果是:

public static void main(String[] args){       

 boolean flag=false;

 int i=0;

     if(flag||i>100){

  System.out.println("step1");

         }else if(!!flag && i/0>8){

      System.out.println("step2");

         }else{

  System.out.println("step3");

         }

}

A、运行时报错

B、打印step1

C、打印step2

D、打印step3

E、编译时报错

7,下面代码的运行结果是:

public static void main(String[] args){

int i=1;

int j=++i;

if(j++>3){

++j;

}else{

i++;

int k=++j>4?j++:i++; 

System.out.println(i); 

}

A2

B3

C4

D、运行时报错

8、下面的程序执行结果是:

public static void main(String[] args) {  

        int i = 0;  

        for (i++; i++ < 10; i++);  

        System.out.println(++i);  

}  

A、输出0

B、输出13

C、输出1

D、输出12

    

9,下面的程序输出

public static void main(String[] args){

for(int i=0;i<3;i++){

switch(i){

case 1:

System.out.println("a");

break;

case 0:

System.out.println("b");

break;

default:

System.out.println("c");

case 2:

System.out.println("d");

 

}

}

}

请写出执行的结果______________

10,下面哪些方法是void show(int a,char b,boolean c){}方法的重载?

A、void show(char b, int a, boolean c){}

B、int show(boolean a,char c ,int b){}

C、void show(int a,char b,double c){}

D、void show(int x,char y,boolean z){}

E、int show(int x,double y){}

F、int show(int x, char y,boolean z){}

 

11,下面哪个声明数组的方式是正确的?

A、int i[]=null;  

B、int[] j=new Integer[](); 

C、int[] k=new int[]{1,2,3};

D、int[] L={1,2,3};

E、int[] m={}; 

F、String[] s=new String[]{"1",'2',"3"}; 

G、String[] s=new String[3];

H、class A{}

public class B{

private A[] ={new A(),new A(),new A()};

}

I、class A{}

public class B{

private A[] =new A[]{new A(),new A(),new A()};

}

12下面哪一项说法是正确的?

A.在一个子类中一个方法不是public的就不能被重载 

B.覆盖一个方法只需要满足相同的方法名和参数类型就可以了

C.覆盖一个方法必须需要相同的方法名参数和返回类型

D.一个覆盖的方法必须有相同的方法名、参数名和参数类型

 

13下面代码的输出结果是多少?___________

class A {

    public static void prt() {

        System.out.println("1");

    }

    public A() {

        System.out.println("A");

    }

}

public class B extends A {

    public static void prt() {

        System.out.println("2");

    }

    public B() {

        System.out.println("B");

    }

    public static void main(String[] args) {

        A a = new B();         

          a = new A();     

 }

}

14下面代码的输出结果是多少?__________

class Parent {

protected String value = "123";

public String getValue() {

      return value;

}

}

public class Child extends Parent {

protected String value = "456";

public static void main(String[] args){

Child c=new Child(); 

System.out.println(c.getValue()); 

}

}

15,表达式(0 > 0 || 0/0 == 0)结果为_____________;

二,主观题

1,请简要写出搭建java开发环境的步骤和java跨平台原理。

2intInteger都可以代表一个整数,这两者在使用上有什么区别吗?为什么JDK中要设计两个数据类型来表示同一种数据?

3,谈谈你对面向对象特征的理解并举例说明。

4,谈谈你对抽象类和接口的理解。

5,请说说方法覆写和方法重载的区别

6,面向对象的基本特征,并简单述之

7,多态的作用

posted @ 2018-02-01 13:57  李东平|一线码农  阅读(599)  评论(0编辑  收藏  举报