一线互联网java面试题及答案
单项选择题(每题2分,共10题)
1.Java中基本数据类型不包括?A.intB.StringC.doubleD.boolean
2.以下哪个关键字用于跳出循环?A.continueB.breakC.returnD.goto
3.以下哪种集合是线程安全的?A.ArrayListB.HashMapC.VectorD.HashSet
4.多态的实现依赖于?A.继承B.接口C.方法重写D.以上都是
5.Java中创建线程的方式不包括?A.继承Thread类B.实现Runnable接口C.实现Callable接口D.继承Runnable类
6.以下哪个修饰符可以使成员变量只能在本类中访问?A.publicB.privateC.protectedD.缺省
7.字符串常量池存在于?A.堆B.栈C.方法区D.寄存器
8.以下哪个是抽象类的关键字?A.abstractB.finalC.staticD.synchronized
9.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?A.值传递B.引用传递C.既不是值传递也不是引用传递D.以上都不对
10.以下哪个类是所有异常类的父类?A.ErrorB.ExceptionC.ThrowableD.RuntimeException
多项选择题(每题2分,共10题)
1.以下哪些属于Java的访问修饰符?A.publicB.privateC.protectedD.default
2.以下哪些是集合框架中的接口?A.ListB.SetC.MapD.Queue
3.以下哪些是Java中的关键字?A.classB.voidC.trueD.new
4.关于final关键字说法正确的是?A.可以修饰类B.可以修饰方法C.可以修饰变量D.修饰的变量不可变
5.以下哪些是线程同步的方式?A.synchronized关键字B.Lock接口C.信号量D.阻塞队列
6.以下哪些属于输入输出流?A.InputStreamB.OutputStreamC.ReaderD.Writer
7.以下哪些是Java中的基本数据类型包装类?A.IntegerB.DoubleC.CharacterD.Boolean
8.以下哪些属于Java的特性?A.面向对象B.平台无关性C.多线程D.垃圾回收
9.以下哪些类位于java.util包下?A.ArrayListB.HashMapC.DateD.Scanner
10.以下哪些是方法重载的特点?A.方法名相同B.参数列表不同C.返回值类型不同D.访问修饰符不同
判断题(每题2分,共10题)
1.Java中数组一旦创建,大小不可改变。()
2.接口中可以有构造方法。()
3.String类是不可变类。()
4.静态方法可以访问非静态成员变量。()
5.一个类可以实现多个接口。()
6.线程在睡眠状态下会释放锁。()
7.抽象类中必须有抽象方法。()
8.基本数据类型的包装类都是不可变类。()
9.HashSet可以存储重复元素。()
10.try-catch-finally块中,finally块一定会执行。()
简答题(每题5分,共4题)
1.简述Java的垃圾回收机制。
答案:垃圾回收机制自动回收不再使用的对象所占用的内存空间。通过可达性分析算法判断对象是否可达,不可达对象会被标记并回收,减轻程序员手动管理内存的负担,提高开发效率和程序稳定性。
2.简述多态的概念及实现方式。
答案:多态指同一个行为具有多个不同表现形式或形态的能力。通过继承、接口和方法重写实现。父类引用指向子类对象,调用重写方法时表现出不同行为。
3.简述synchronized关键字的作用。
答案:用于实现线程同步,保证同一时刻只有一个线程能访问被修饰的代码块或方法,从而避免多线程并发访问导致的数据不一致等问题,确保线程安全。
4.简述