Java 初级 面试前准备

简介: Java 初级 面试前准备

感谢您参加我们的面试:

以下是我们总结一些面试前准备和技术参考题,希望对你有所帮助。

首先,你需要先准备下工作相关的自我介绍,包括以下内容:


几年 Java 开发经验,大概概括下做过什么类型的项目,分别多久经验(如互联网金融,

互联网电商,传统后台等)


选择 1~2 个近期关键项目具体介绍;

 主要担任什么岗位,工作内容是什么,也可以简单介绍下团队人员组成,你在其中是属于

什么角色(如架构搭建,核心代码编写,主要做接口开发等。。。)

 项目的技术是什么 (请具体到开发环境,框架,开发工具,数据库等),如有一些比较

创新的技术可以具体说明

 项目成果怎么样 (是否上线,用户使用效果如何等)

 个人技术总结/自己成就突出(如你们怎么处理技术难题;你自己有什么建设性意见改进

项目;项目技术是否有不足,你觉得要是你会怎么去做)

其次, 你需要看下您的简历,把你简历里面写的技术点(尤其写了精通,熟悉的)再过一下。

 很多时候技术面试官会根据你简历里面写的技术点,有浅到深地提问。


最后,以下是我们给你提供的一些 Java 基础技术参考题,没有答案,需要你自己去准备哦~


祝面试成功,加油!

 数据库相关:求平均成绩大于 60 分的学生名字和他们个人的平均分。

 值传递与引用传递的区别;

 重载和重写的区别

 spring 框架的 IOC ,AOP 个人的理解

 struts struts2 springmvc 框架底层实现和他们的区别;

 hibernate 框架的一级缓存和二级缓存

 java 类加载器 是什么,http 协议

 java 的内存机制

 java 的数据结构

 redis 基本数据类型

 spring 事务的传播机制

 bean 的作用

 用过什么设计模式

 单例模式多例的区别

 什么是工厂模式,工厂模式都有哪几种,什么情况下用

 java 的反射机制是什么

 什么是动态代理

 http 的 7 层实现(或者叫 3 次握手是什么)

 防止 sql 注入用哪几种方式

 高并发如何处理

 什么是同步锁

 什么是乐观锁

 什么是悲观锁

 sql 如何优化;sql 的执行方式是什么样的;如何知道 sql 是怎么执行的?

 spring 的配置文件

 数据交互的加密方式

 内存分配


1.说出数据连接池的工作机制是什么?


J2EE 服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序

需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,

池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成

后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。

实现方式,返回的 Connection 是原始 Connection 的代理,代理 Connection 的 close 方法不是真

正关连接,而是把它代理的 Connection 对象还回到连接池中。



2.接口和抽象类的区别是什么?


Java 提供和支持创建抽象类和接口。它们的实现有共同点,不同点在于:

接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法。

类可以实现很多个接口,但是只能继承一个抽象类

类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现

抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的。

抽象类可以在不提供接口方法实现的情况下实现接口。

Java 接口中声明的变量默认都是 final 的。抽象类可以包含非 final 的变量。

Java 接口中的成员函数默认是 public 的。抽象类的成员函数可以是 private,

protected 或者是 public。

接口是绝对抽象的,不可以被实例化。抽象类也不可以被实例化,但是,如果它包

含 main 方法的话是可以被调用的。



3.概括的解释下线程的几种可用状态?


线程在执行过程中,可以处于下面几种状态:

 就绪(Runnable):线程准备运行,不一定立马就能开始执行。

 运行中(Running):进程正在执行线程的代码。

 等待中(Waiting):线程处于阻塞的状态,等待外部的处理结束。

 睡眠中(Sleeping):线程被强制睡眠。

 I/O 阻塞(Blocked on I/O):等待 I/O 操作完成。

 同步阻塞(Blocked on Synchronization):等待获取锁。

 死亡(Dead):线程完成了执行。



4.HashMap 和 Hashtable 有什么区别?


HashMap 和 Hashtable 都实现了 Map 接口,因此很多特性非常相似。但是,他们

有以下不同点:

 HashMap 允许键和值是 null,而 Hashtable 不允许键或者值是 null。

 Hashtable 是同步的,而 HashMap 不是。因此,HashMap 更适合于单线程环境,

 而 Hashtable 适合于多线程环境。

 HashMap 提供了可供应用迭代的键的集合,因此,HashMap 是快速失败的。另一

 方面,Hashtable 提供了对键的列举(Enumeration)。

 一般认为 Hashtable 是一个遗留的类



总结


如果这篇文章对您有所帮助,或者有所启发的话,求一键三连:点赞、转发、收藏,您的支持是我坚持写作最大的动力。

目录
相关文章
|
14天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
45 2
|
3天前
|
Java 程序员
Java社招面试题:& 和 && 的区别,HR的套路险些让我翻车!
小米,29岁程序员,分享了一次面试经历,详细解析了Java中&和&&的区别及应用场景,展示了扎实的基础知识和良好的应变能力,最终成功获得Offer。
26 14
|
19天前
|
存储 算法 Java
大厂面试高频:什么是自旋锁?Java 实现自旋锁的原理?
本文详解自旋锁的概念、优缺点、使用场景及Java实现。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:什么是自旋锁?Java 实现自旋锁的原理?
|
25天前
|
存储 缓存 Oracle
Java I/O流面试之道
NIO的出现在于提高IO的速度,它相比传统的输入/输出流速度更快。NIO通过管道Channel和缓冲器Buffer来处理数据,可以把管道当成一个矿藏,缓冲器就是矿藏里的卡车。程序通过管道里的缓冲器进行数据交互,而不直接处理数据。程序要么从缓冲器获取数据,要么输入数据到缓冲器。
Java I/O流面试之道
|
21天前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
43 4
|
22天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
75 4
|
2月前
|
存储 安全 算法
Java面试题之Java集合面试题 50道(带答案)
这篇文章提供了50道Java集合框架的面试题及其答案,涵盖了集合的基础知识、底层数据结构、不同集合类的特点和用法,以及一些高级主题如并发集合的使用。
100 1
Java面试题之Java集合面试题 50道(带答案)
|
2月前
|
存储 Java 程序员
Java面试加分点!一文读懂HashMap底层实现与扩容机制
本文详细解析了Java中经典的HashMap数据结构,包括其底层实现、扩容机制、put和查找过程、哈希函数以及JDK 1.7与1.8的差异。通过数组、链表和红黑树的组合,HashMap实现了高效的键值对存储与检索。文章还介绍了HashMap在不同版本中的优化,帮助读者更好地理解和应用这一重要工具。
55 5
|
2月前
|
存储 Java
[Java]面试官:你对异常处理了解多少,例如,finally中可以有return吗?
本文介绍了Java中`try...catch...finally`语句的使用细节及返回值问题,并探讨了JDK1.7引入的`try...with...resources`新特性,强调了异常处理机制及资源自动关闭的优势。
23 1
|
2月前
|
Java 程序员
Java 面试高频考点:static 和 final 深度剖析
本文介绍了 Java 中的 `static` 和 `final` 关键字。`static` 修饰的属性和方法属于类而非对象,所有实例共享;`final` 用于变量、方法和类,确保其不可修改或继承。两者结合可用于定义常量。文章通过具体示例详细解析了它们的用法和应用场景。
30 3