logo资料库

【牛客网】Java开发校招面试考点汇总(附面试题和答案).pdf

第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
资料共22页,剩余部分请下载后查看
Java 开发校招面试考点汇总(附面试题和答案)
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 以 下 不 作 为 J a va 学 习 路 径 , 只 是 汇 总 的 校 招 J a va 后 台 开 发 面 试 考 点 ( 因 为 还 有 笔 试 考 点 , 后 面 结 合 在 一 起 给 大 家 学 习 路 径 ), 后 续 会 为 大 家 更 新 1 0 w + 字 数 的 J a va 校 招 面 试 题 库 , 还 有 其 他 岗 位 的 相 关 题 库 和 资 料 , 想 要 什 么 岗 位 的 可 以 在 群 里 提 哦 ~ 1 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 2 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 一、JavaSE 部分 1、Java 基础 1、为什么重写 equals 还要重写 hashcode 2、说一下 map 的分类和常见的情况 3、Object 若不重写 hashCode()的话,hashCode()如何计算出来的? 4、==比较的是什么? 5、若对一个类不重写,它的 equals()方法是如何比较的? 6、java8 新特性 7、说说 Lamda 表达式的优缺点。 8、一个十进制的数在内存中是怎么存的? 9、为啥有时会出现 4.0-3.6=0.40000001 这种现象? 10、Java 支持的数据类型有哪些?什么是自动拆装箱? 11、什么是值传递和引用传递? 12、数组(Array)和列表(ArrayList)有什么区别?什么时候应该使用 Array 而不 是 ArrayList? 13、你了解大 O 符号(big-O notation)么?你能给出不同数据结构的例子么? 14、String 是最基本的数据类型吗? 15、int 和 Integer 有什么区别 16、String 和 StringBuffer 的区别 17、我们在 web 应用开发过程中经常遇到输出某种编码的字符,如 iso8859- 1 等,如何输出一个某种编码的字符串? 18、int 和 Integer 有什么区别? 19、&和&&的区别? 20、在 Java 中,如何跳出当前的多重嵌套循环? 21、你能比较一下 Java 和 JavaSciprt 吗? 22、简述正则表达式及其用途。 23、Java 中是如何支持正则表达式操作的? 24、请你说说 Java 和 PHP 的区别? 3 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 2、关键字 21 天编程成长营,牛客带你学编程 1、介绍一下 Syncronized 锁,如果用这个关键字修饰一个静态方法,锁住了 什么?如果修饰成员方法,锁住了什么? 2、介绍一下 volatile? 3、锁有了解嘛,说一下 Synchronized 和 lock 4、讲一讲 Java 里面的 final 关键字怎么用的? 3、面向对象 1、wait 方法底层原理 2、Java 有哪些特性,举个多态的例子。 3、String 为啥不可变? 4、类和对象的区别 5、请列举你所知道的 Object 类的方法。 6、重载和重写的区别?相同参数不同返回值能重载吗? 7、”static”关键字是什么意思?Java 中是否可以覆盖(override)一个 private 或者是 static 的方法? 8、String 能继承吗? 9、StringBuffer 和 StringBuilder 有什么区别,底层实现上呢? 10、类加载机制,双亲委派模型,好处是什么? 11、静态变量存在哪? 12、讲讲什么是泛型? 13、解释 extends 和 super 泛型限定符-上界不存下界不取 14、是否可以在 static 环境中访问非 static 变量? 15、谈谈如何通过反射创建对象? 16、Java 支持多继承么? 17、接口和抽象类的区别是什么? 18、Comparable 和 Comparator 接口是干什么的?列出它们的区别。 19、面向对象的特征有哪些方面 20、final, finally, finalize 的区别。 21、Overload 和 Override 的区别。Overloaded 的方法是否可以改变返回值 的类型? 22、abstract class 和 interface 有什么区别? 23、Static Nested Class 和 Inner Class 的不同 4 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 24、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属 性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 25、Java 的接口和 C++的虚类的相同和不同处。 26、JAVA 语言如何进行异常处理,关键字:throws,throw,try,catch,finally 分别代表什么意义?在 try 块中可以抛出异常吗? 27、内部类可以引用他包含类的成员吗?有没有什么限制? 28、两个对象值相同(x.equals(y) == true),但却可有不同的 hash code 说法 是否正确? 29、重载(Overload)和重写(Override)的区别。重载的方法能否根据返 回类型进行区分? 30、如何通过反射获取和设置对象私有字段的值? 31、谈一下面向对象的"六原则一法则"。 32、请问 Query 接口的 list 方法和 iterate 方法有什么区别? 33、Java 中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? 34、Java 中,什么是构造函数?什么是构造函数重载?什么是复制构造函数? 35、hashCode()和 equals()方法有什么联系? 4、集合 1、Map 和 ConcurrentHashMap 的区别? 2、hashMap 内部具体如何实现的? 3、如果 hashMap 的 key 是一个自定义的类,怎么办? 4、ArrayList 和 LinkedList 的区别,如果一直在 list 的尾部添加元素,用哪个 效率高? 5、HashMap 底层,负载因子,为啥是 2^n? 6、ConcurrentHashMap 锁加在了哪些地方? 7、TreeMap 底层,红黑树原理? 8、concurrenthashmap 有啥优势,1.7,1.8 区别? 9、ArrayList 是否会越界? 10、什么是 TreeMap? 11、ConcurrentHashMap 的原理是什么? 12、Java 集合类框架的基本接口有哪些? 13、为什么集合类没有实现 Cloneable 和 Serializable 接口? 14、什么是迭代器? 5 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 15、Iterator 和 ListIterator 的区别是什么? 16、快速失败(fail-fast)和安全失败(fail-safe)的区别是什么? 17、HashMap 和 Hashtable 有什么区别? 18、ArrayList 和 LinkedList 有什么区别? 19、ArrayList,Vector,LinkedList 的存储性能和特性是什么? 20、Collection 和 Collections 的区别。 21、你所知道的集合类都有哪些?主要方法? 22、List、Set、Map 是否继承自 Collection 接口? 23、阐述 ArrayList、Vector、LinkedList 的存储性能和特性 24、List、Map、Set 三个接口存取元素时,各有什么特点? 5、线程 1、多线程中的 i++线程安全吗?为什么? 2、如何线程安全的实现一个计数器? 3、多线程同步的方法 4、介绍一下生产者消费者模式? 5、线程,进程,然后线程创建有很大开销,怎么优化? 6、线程池运行流程,参数,策略 7、讲一下 AQS 吧。 8、创建线程的方法,哪个更好,为什么? 9、Java 中有几种方式启动一个线程? 10、Java 中有几种线程池? 11、线程池有什么好处? 12、cyclicbarrier 和 countdownlatch 的区别 13、如何理解 Java 多线程回调方法? 14、创建线程有几种不同的方式?你喜欢哪一种?为什么? 15、概括的解释下线程的几种可用状态。 16、同步方法和同步代码块的区别是什么? 17、启动线程有哪几种方式,线程池有哪几种? 18、在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的 同步? 19、sleep() 和 wait() 有什么区别? 20、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 6 牛客网,数百万大学生都在使用的免费在线学习平台
NOWCODER.COM 牛客网——互联网学习求职必备神器 21 天编程成长营,牛客带你学编程 21、设计 4 个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减 少 1。使用内部类实现线程,对 j 增减的时候没有考虑顺序问题。 22、启动一个线程是用 run()还是 start()? 23、请说出你所知道的线程同步的方法 24、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么? 25、java 中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和 suspend()方法为何不推荐使用? 26、线程的 sleep()方法和 yield()方法有什么区别? 27、当一个线程进入一个对象的 synchronized 方法 A 之后,其它线程是否可 进入此对象的 synchronized 方法 B? 28、请说出与线程同步以及线程调度相关的方法。 29、举例说明同步和异步 30、什么是线程池(thread pool)? 31、说说线程的基本状态以及状态之间的关系? 32、如何保证线程安全? 6、锁 1、讲一下非公平锁和公平锁在 reetrantlock 里的实现。 2、讲一下 synchronized,可重入怎么实现。 3、锁和同步的区别。 4、什么是死锁(deadlock)? 5、如何确保 N 个线程可以访问 N 个资源同时又不导致死锁? 6、请你简述 synchronized 和 java.util.concurrent.locks.Lock 的异同? 7、JDK 1、Java 中的 LongAdder 和 AtomicLong 的区别 2、JDK 和 JRE 的区别是什么? 8、反射 1、反射的实现与作用 9、JVM 7 牛客网,数百万大学生都在使用的免费在线学习平台
分享到:
收藏