2024年Java最全记录一次 2024 春招 Java实习生笔试题,java三年经验面试题

最后

小编利用空余时间整理了一份《MySQL性能调优手册》,初衷也很简单,就是希望能够帮助到大家,减轻大家的负担和节省时间。

关于这个,给大家看一份学习大纲(PDF)文件,每一个分支里面会有详细的介绍。

image

这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

解析:

A、Spring 可以使用 tx 标签 或者 @Transactional 实现声明事务 (这里用过竟然不知道 emmm)

B、依赖注入的核心是 工厂模式, AOP 的核心是动态代理,所以正确

C、我觉得这里错误的可能幸福最大, Spring 只提供了 AOP 的方式,具体实现还得靠我们自己寻找合适的切入点,然后再做对应的通知。并没有提供一个现成的系统给我们,因此错误

D、Spring 的核心是 IoC 和 Aop,但是还包括 ORM,Bean 等多项管理,所以正确

4、同步与异步的问题 (HTTP)


()是调用者发出消息后,必须等待消息处理结束返回后,才能进行后续操作

A、返回消息

B、简单消息

C、异步消息

D、同步消息

解析:

我们一般使用 ajax 技术实现页面局部刷新操作,这就是异步,不用等待全部加载完毕才显示,同步就是等待一个页面全部接在完毕才会显示

5. JavaScript 基础 (DOM 操作)


下面不属于访问指定节点的方法的是?

A、getElementById

B、getElementByTagName

C、obj.value

D、getElementByName

解析:

这里只 C不一样,并且 C 是获取 JavaScript 对象的值,和另外三个获取 dom 节点不属于同一类

6、HTML 基础 (form 表单)


在页面中看不到表单元素的是那种?()

A、<input type="radio"></nput> 单选按钮

B、<input type="hidden"></input> 隐藏域

C、<input type="password"></input> 密码输入框

D、 <input type="reset"></input> 重置按钮

解析:

英语好的同学,看到 B 应该就会直接选了,这些常见按钮我们还是要知道的

7、数据库基础 (sql 基本编写)


设有学生表 Student (学号、姓名、性别、年龄),则向 Student 表中插入一条新记录的正确 SQL 语句是?

A、APPEND? INTO? STUDENT? VALUES? ('001',,'王五','男',18)

B、INSERT? STUDENT? VALUES? ('001',,'王五','男',18)

C、INSERT? TABLE? STUDENT? VALUES? ('001',,'王五','男',18)

D、INSERT? INTO? STUDENT? VALUES? ('001',,'王五','男',18)

解析:

幸好最近一直在写 Java EE 的项目,写 sql 语句是必不可少的。为了怕出错,我特意回顾了一下 DML 数据库操作语言 —— mysql 常用命令整理,这一题的错误也非常明显,有 sql 基础的人就不会出错了。

8、事物管理 (JDBC)


哪个类包含了事物控制, setAutoCommit、commit 和 rollback 回滚方法?

A、ResultSet

B、Connection

C、Statement

解析:

这里给出了三个方法,前面两个可能会比较眼熟,但是后面事物回滚可能很多人都没用过,这个功能其实非常的强大。当你的项目报错的时候,可以通过事物回滚保证数据库的数据还是正常的。

  • A 选项,ResultSet 得到的是一个结果集,我们可以使用这个类来遍历数据库中查询的数据

  • B 选项,我们使用 JDBC 时,会用到 Connection con = DriverManager.getConnection(URL,USERNAME,PASSWORD) 这一步得到连接,然后就可以通过这个对象得到如上三个方法

在这里插入图片描述

  • C 选项,它的作用是用来执行 SQL 语句的

九、线性表,链表的特点 (数据结构)


线性表若采用链式存储结构的时候,要求内存可用存储单元的地址 ()

A、 一定是不连续的

B、必须是连续的

C、部分地址必须是连续的

D、连续或者不连续都可以

解析:

这题我为什么选 D呢,主要是 A、B、C 都带有一定的绝对性,再来看一看 线性表 和 链表的定义,

  • 线性表的特点在查询数据快,因为它是连续的,只要找得到它对应数据的下标,就能通过下标找到它,但是删除或者增加元素就很慢,因为要涉及到移动元素

  • 链表的特点:链表添加、删除元素很方便,我们只需要知道元素的地址,就可以知道元素在哪,但是查找元素就很麻烦,因为我们总是要从第一个元素开始往后面找

十、form 表单中 get 和 post 请求的数据量 (HTML HTTP)


HTML 的首要标记是 <from> ,<form> 标记的参数 method 表示表单发送的方法,可能为 get 或者 post,下列关于 get 和 post 描述正确的是

A、get 方法传递的参数对客户端是不可见的

B、post 方法传递的参数对客户端是不可见的

C、post 方法对发送数据的数量限制再 255 个字符以内

D、get 请求信息以查询字符串的形式发送,查询字符串没有长度限制

解析:

这题我当时选的 C,我以为人人都是程序员,会使用 f12 查看 post 得数据,害。现在分析下每题错误得原因

A、 get 请求在客户端,比如我正在编辑得这篇博客就是, ‘?’ 后面得就是查询字符串,以键值对得形式存在,长度想想也知道,怎么可能不限制长度,所以 D也错误

在这里插入图片描述

C、我之前一直以为携带大量请求使用 get ,因为快,post 请求携带的参数是为了安全性,之后又在网上查了一些两种请求的区别

长记性了 ing

在这里插入图片描述

11、Object 类继承,派生问题 (Java SE 基础)


下面关于 Object 类的说法,正确的是

A、 一个类如果定义为 abstract 的,依然继承自 Object 类

B、Error 类不是从 Object 类派生出来的

C、如果一个类显示继承了其他类,则该类不在继承 Object 类

D、如果一个类是从 Object 类派生出来的,那么必须重写 toString() 和 equals() 方法

解析:

这一题我选择的是 A,我的理解是 Object 类作为所有类的父类,是最高级的类,所有类的创建都默认继承了 Object 类,所以可以看到我们自己创建的类都就可以看到拥有 toString() 等等一些来自 Object 类的方法

B、前面说到了,Object 类是最高的类

C、和 A 冲突

D、不一定要重写,可以根据自身需求定制,比如我们自己写实体类的时候,

12、数据库、并发?


数据库并发操作可能带来的问题包括 ()

A、增加数据冗余度

B、数据独立性会提高

C、非法用户的使用

D、丢失更新

这一题我也时大概猜了一下,结合我所理解的并发内容,就选择了 D

我也在网上查了一下数据库的 并发 和 并行的区别 数据库 并发 和 并行

总结:

数据库并发操作会出现

  1. 丢失更新

  2. 脏读

  3. 不可重复读

  4. 幻象读

13、JS 基础(JSON 数据格式)


以下关于 JSON 描述不正确 ()

A、数组是值(value) 的有序集合,一个数组以 ‘[’ 开始,’]’ 结束,值之间使用 ‘;’ 分割。

B、JSON是一种轻量级的数据交换格式

C、 对象是一个无序的 " " 名称/值 “对"集合,一个对象以 “{” 开始,以 “}” 结束,每个"名称” 后面跟着一个 “:” ," " 名称/值 对 之间使用 “,” 分割

D、值(value)可以是双引号括起来的字符串(String)、数值(number)、true、false、null、对象 (object)、或者数组(array),这些结构可以嵌套

解析:

A 很明显的错误,数组之前一般都适用 “,” 间隔,这是编程基础的内容

14、排序 (算法)


是时候好好梳理一下排序算法了~

下面稳定的排序算法是?

A、树形选择排序和 shell 排序

B、折半插入排序和起泡排序

C、简单选择排序和四路归并排序

D、直接插入排序和快速排序

解析:

不稳定:快速排序、希尔排序、堆排序 / 选择排序。

稳定:冒泡排序、插入排序、归并排序、基数排序。

应用场景

适合顺序结构的是:折半插入排序、希尔排序、快速排序、堆排序

适合链式结构的是:直接插入排序、归并排序

参考博客

15、关系型数据库四大原则


关系型数据库需要遵循 ACID 原则,关于此描述的正确的有

A、存储系统保证如果没有对某个对象的新的更新的操作,后续访问中可能出现不一致的值,但最终所有的访问都将返回这个对象最后更新的值。

B、一个事物被提交之后,它对数据库的改变是永久的,即使数据库发生故障也不应该对其有任何影响。(数据库事物的持久性)

C、在 Read Commiteed 的隔离级别下,多个用户并发访问数据库时,一个用户的事物不被其他事物所干扰,不会出现幻读(脏读)现象。

解析:

这题应该选 B,B 讲的是数据库的原子性, A 应该会报错,C 是会出现脏读

参考链接

16、Java SE (集合)


HashMap 和 HashTable 的共同点是?

A、都可以自动按键值进行排序

B、没有共同点

C、都是可以存放对象

D、存储性能都是一样的

解析:

key 和 value 都是对象,并且不能包含重复 key,但可以包含重复的value。因此 C正确,HashMap 是非线程安全的, HashTable 是线程安全的,所以 D是错误的。因为两者都是使用 Hash值来保证每对 键值对不重复,所以 A错误。

17、前端框架 (React)


React 工作原理是什么

A、更优方式手动更新 DOM

B、事件通知后更新 DOM

C、虚拟 DOM 结合 DIFF 算法更新 DOM

D、数据双向绑定更新 DOM

解析:

React 没有学过,只学过 Vue,D 答案就是针对 Vue 的。 React 是和虚拟 DOM 相关的,所以答案选 C

18、Java EE基础 (Servlet)


有关 Servlet 生命周期说法正确的有

A、service() 方法响应客户端的请求

面试准备+复习分享:

为了应付面试也刷了很多的面试题与资料,现在就分享给有需要的读者朋友,资料我只截取出来一部分哦

秋招|美团java一面二面HR面面经,分享攒攒人品

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

和虚拟 DOM 相关的,所以答案选 C

18、Java EE基础 (Servlet)


有关 Servlet 生命周期说法正确的有

A、service() 方法响应客户端的请求

面试准备+复习分享:

为了应付面试也刷了很多的面试题与资料,现在就分享给有需要的读者朋友,资料我只截取出来一部分哦

[外链图片转存中…(img-XXqNfFOz-1714897236622)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值