2018年网易Java笔试题

时间:2022-10-26 13:50:18

2018年网易Java笔试题

 

  1. OOP三特性

封装:

继承:

多态:

  1. Java中如何实现多继承

实现多个接口

使用内部类

  1. Java对象生成过程

 

4.HashTable和HashMap的区别

ü  历史原因:Hashtable是基于陈旧的Dictionary类实现的,HashMap是Java 1.2引进的一个Map接口的一个实现

ü  同步性:Hashtable是同步的,这个类中的一些方法保证了Hashtable中的对象是线程安全的,而HashMap则是异步的,因此HashMap中的对象并不是线程安全的,因为同步的要求会影响执行的效率,所以你不需要线程安全的集合,那么使用HashMap是一个很好的选择,这样可以避免由于同步带来的不必要的性能的开销,从而提高效率

ü  值:HashMap可以存入空值作为key或value,Hashtable则不行!

 

5.接口的成员域具有什么属性

必须是public 类型的

6.经常使用的三种设计模式,画出UML图,并写出Java代码

7.final、finally、finalize的区别

final关键字
先看看final关键字,它可以被用于以下几个地方:
1、修饰属性、局部变量、方法参数:
如果final修饰的是一个基本类型,就表示这个变量所赋予的值不可修改,即它是个常量;如果final修饰的是一个对象,就表示这个变量被赋予的引用不可修改

2、修饰方法:
被final修改的方法不能被覆写。

3、修饰类
final类不允许被继承(如果String类),编译器在处理时把它的所有方法都当作final的(但数据成员既可以是final,也可以不是,以定义时前面修饰为准),因此final类比普通类拥有更高的效率:

 

finally关键字
finally关键字用在try/catch语句最末,表示不管是否抛出异常,finally块中的语句最终肯定、一定会被执行

finalize关键字
finalize()是Object类的一个方法,finalize()方法是GC(garbage collector)运行机制的一部分,由对象的垃圾回收器调用此方法,当一个对象被回收时,finalize()方法将会被调用。

8.SOAP、WSDL、UDDI的作用

9.Java输入输出流的两种类型是什么

10.ArrayList如何实现自定义的排序

11.下列代码如何优化

public String test(String s1,String s2)

{

   String s = s1;

   s+=s2;

   return s;

}

(代码非原题,应是String到StringBuffer的优化)

12.写出一个JSP/Servlet,实现传入A和B,计算A*B,并显示结果

 

 

 

常见面试题整理:

①   .抽象类和接口的区别

  1. 接口是公开的,里面不能有私有的方法或变量,接口不能继承其他的类,只能实现其他的接口,子类一定要实现接口里面的所有的方法,接口里面的方法都是抽象的。

而抽象类是可以有是有的方法或变量的,实现抽象类可以有选择地重写需要用到的方法,但是必须实现里面所有的抽象方法,抽象类里面可以有非抽象方法,子类同样要实现抽象类里面的所有的抽象方法。

    1. 接口中定义的变量只能是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。
          抽象类中的变量可定义public private等型,其值可以在子类中重新定义,也可以重新赋值。
    2. 抽象类可以有构造方法,而接口则没有