十月底—最新网易Java岗社招面试经历分享

(面试题+答案领取方式:关注公众号白楠楠获取)

网易面试题

  1. 面向对象的特点有哪些?

  2. 列举几个java常用的package及其作用

  3. 接口和抽象类有什么联系和区别

  4. 重载和重写有什么区别

  5. java有哪些基本数据类型?

  6. Java支持的数据类型有哪些?什么是自动拆装箱?

  7. int 和 Integer 有什么区别

  8. 数组有没有length()方法?String有没有length()方法?

  9. Java中符号>>和>>>有什么区别?

  10. Java类的实例化顺序

  11. 什么是值传递和引用传递

(1)值传递是对基本型变量而言的,传递的是该变量的一个副本,改变副本不影响原变量.

(2)引用传递一般是对于对象型变量而言的,传递的是该对象地址的一个副本, 并不是原对象本身 。


  1. String能被继承吗?为什么?

  2. String和StringBuilder、StringBuffer的区别?

  3. Java集合框架的基础接口有哪些?

  4. Java集合框架是什么?说出一些集合框架的优点?

(1)每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。

(2)集合框架的部分优点如下:

•使用核心集合类降低开发成本,而非实现我们自己的集合类。

•随着使用经过严格测试的集合框架类,代码质量会得到提高。

•通过使用JDK附带的集合类,可以降低代码维护成本。

•复用性和可操作性。


  1. HashMap 与HashTable有什么区别

  2. ArrayList 和 LinkedList 有什么区别?

  3. 简单介绍Java异常框架

  4. java中的throw 和 throws关键字有什么区别?

  5. 列举几个常见的运行时异常?

  6. final, finally, finalize有什么区别

  7. 描述Java内存模型


Java虚拟机规范中将Java运行时数据分为六种:

(1)程序计数器:是一个数据结构,用于保存当前正常执行的程序的内存地址。Java虚拟机的多线程就是通过线程轮流切换并分配处理器时间来实现的,为了线程切换后能恢复到正确的位置,每条线程都需要一个独立的程序计数器,互不影响,该区域为“线程私有”。

(2)Java虚拟机栈:线程私有的,与线程生命周期相同,用于存储局部变量表,操作栈,方法返回值。局部变量表放着基本数据类型,还有对象的引用。

(3)本地方法栈:跟虚拟机栈很像,不过它是为虚拟机使用到的Native方法服务。

(4)Java堆:所有线程共享的一块内存区域,对象实例几乎都在这分配内存。

(5)方法区:各个线程共享的区域,储存虚拟机加载的类信息,常量,静态变量,编译后的代码。

(6)运行时常量池:代表运行时每个class文件中的常量表。包括几种常量:编译时的数字常量、方法或者域的引用。

  1. java中垃圾收集的方法有哪些?

  2. 常见的垃圾收集算法

(1)标记-清除(Mark-Sweep)算法

(2)复制算法

( 3)标记 -整理 (Mark-Compact) 算法

  1. 在JVM GC中如何判断一个对象是否可以回收?

(面试题+答案领取方式:关注公众号白楠楠获取)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值