传智播客java就业班入学测试题

时间:2021-08-28 13:16:45
  1. 下列标识符哪个是合法的(BD )

       A.class

       B.$abc

       C.1234

       D._name

 

     2. 下列代码运行的结果是(c )

public static void main(String[] args) {

   

    int x = 4;

    int y = 5;

    if(x++>4 & ++y>5) {

       x++;

    }

    System.out.println("x=" + x + ",y=" + y);

   

}

A. x=4,y=5

B. x=4,y=6

C. x=5,y=6

D. x=6,y=6

 

3. 下面哪些函数是public void aMethod(){...}的重载函数?(BD)

A. void aMethod( ){...}

B. public int aMethod(int a, float b){...}

C. public void aMethod (){...}

D. public float aMethod (int m){…}

 

4. 以下代码输出是(  D)

class Demo {

    public static void main(String[] args) {

       int i = 0;

       int sum = 0;

       while (i <= 10) {

           i++;

           if (i % 2 != 0)

              continue;

           sum += i;  // sum = sum + i // 0+2+4+6+8+10 = 30

 

       }

       System.out.println(sum);

    }

}

A.  55

B.  45

C.  35

D.  30

 

5.下面关于java中包的说法正确的是( ACD)

A. 在java中可以使用import语句导入包

B. 在java中可以使用package语句导入包

C. 位于同一个包中的类,不需要导包就可以直接访问

D. 不同的包中可以出现类名相同的类

 

6.下列有关接口的叙述错误的是哪项?(A)

A.接口中只能包含抽象方法和常量

B.一个类可以实现多个接口

C.类实现接口时必须实现其中的方法

D.接口不能被继承

 

7.运行以下代码片段,输出结果是?( D )

class X {

    Y b = new Y();

    X() {

            System.out.print("X");

    }

}

 

class Y {

    Y() {

            System.out.print("Y");

    }

}

 

public class Z extends X {

    Y y = new Y();

    Z() {

            System.out.print("Z");

    }

 

    public static void main(String[] args) {

           new Z();

    }

}

A. Z

B. YZ

C. XYZ

D. YXYZ

 

8.下列选项中关于java中this关键字的说法错误的有( AC ) 

A. this关键字是一个对象的引用

B. this关键字可以用于引用当前类以外其他类型的对象

C. this可用于构造函数中,调用类本身重载的构造函数,但是必须写在首行

D. this可用于静态方法中

 

9.关于继承, 以下说法正确的是: (AD)

A.Java中只支持单继承, 一个类只能继承一个类, 但是可以有多个子类

B.一个类如果没有自己写无参构造方法, 那么子类将无法继承

C.子类可以当父类用, 父类不可以当子类用

D. 子类重写父类方法时访问权限不能更低

 

10.下列哪些代码可以顺利通过编译和运行? ( ABD )

A.Integer i =  new Integer('A');

B.Integer i = new Integer("7");

C.Character c = new Character("A");

D.Boolean b = new Boolean(null);

E.Integer i = new Integer("0x10");

 

11.在Java中,如果要在字符串类型对象s="java"中,得到字符 'v' 出现的位置,可使用下面的那个方法?( C )

A. s.matches('v');

B. s.charAt('v');

C. s.indexOf('v');

D. s.substring('v');

 

12.下列关于ArrayList、Vector和LinkedList集合的说法正确是有( ACD )

A. ArrayList集合底层是数组实现,该集合线程不安全

B. Vector 集合元素的存放是无序的

C. LinkedList集合底层是链表结构,适合做元素的增删操作

D. 这三个集合都是List接口的实现类

 

13.下面程序的输出结果是什么( D )

Set set= new HashSet();

set.add("aaa");

set.add("bbb");

set.add("aaa");

System.out.println(set.size());

A. 编译不通过

B. 运行时出错

C. 输出3

D. 输出2

 

14.下列哪些方法是ArrayList和LinkedList集合中都定义的( ACD )

A. add(Object o)

B. removeFirst()

C. remove(Object o)

D. add(int index,Object o)

 

15.下面程序的运行结果是(  D  )

  FileOutputStream fos = new FileOutputStream(“c:\\demo.txt”);

  fos.write(“abc”);

  fos.close();

A.在C盘创建文件demo.txt,但文件是空的

B.在C盘创建文件demo.txt,并写入数据abc

C.将C盘已有的文件demo.txt中追加写入abc

D.编译失败

 

16.关于方法的递归算法,说法正确的是( ABC )

A.递归就是方法自己调用自己

B.递归的次数不能过大,否则会导致栈内存溢出

C.使用递归算法,方法必须有返回值

D.构造方法不可以使用递归算法

 

17.在 awt 中,下列哪个组件可以实现带标题的窗口( C )

A. Menu

B. Button

C. Frame

D. TextField

 

18.编写Button组件的事件处理类时,需要实现哪个接口? ( B )

A. ItemListener

B. ActionListener

C. ButtonListener

D. WindowListener

 

19.下面哪项不是TCP的特点? (  B  )

A.面向连接

B.数据不可靠

C.传输速度慢

D.对数据大小无限制

 

解析:

最大的坏处就是PPPoE导致MTU变小了以太网的MTU是1500,再减去PPP的包头包尾的开销(8Bytes),就变成1492。

UDP 包的大小就应该是 1492 - IP头(20) - UDP头(8) = 1464(BYTES)
TCP 包的大小就应该是 1492 - IP头(20) - TCP头(20) = 1452(BYTES)

目前大多数的路由设备的MTU都为1500
我对上面的理解是:如果我们定义的TCP和UDP包小于1452,1464,那么我们的包在IP层就不用分包了,这样传输过程中就避免了在IP层组包发生的错误。如果使用UDP协议,如果IP层组包发生错误,那么包就会被丢弃,UDP不保证可靠传输。但是TCP发生组包错误时,该包会被重传,保证可靠传输。所以,我们在用Socket编程时,包的大小设定不一定非要小于1400,UDP协议要求包小于64K,TCP没有限定。

 

20.获取Class类型的对象的三种方式是:( ABD )

A. Object类的getClass()

B. class静态属性

C. 自己创建Class对象

D. Class类的forName()静态方法

 

解析:

// 1. 根据给定的类名来获得  用于类加载

String classname = "cn.itcast.reflect.Person";// 来自配置文件

Class clazz = Class.forName(classname);// 此对象代表Person.class

// 2. 如果拿到了对象,不知道是什么类型   用于获得对象的类型

Object obj = new Person();

Class clazz1 = obj.getClass();// 获得对象具体的类型

// 3. 如果是明确地获得某个类的Class对象  主要用于传参

Class clazz2 = Person.class;