4.17北大软件武汉分公司 Java后端一面 30min

1.自我介绍

2. Java基本数据类型有哪些?

一共八种,int、short、long、double、float、byte、char、boolean

3.String有哪些常用方法?

常用的方法有equals、split、charAt、subString等

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

重载:发生在同一个类,方法名相同、参数列表和顺序可以不同

重写:发生在子类继承父类中,子类重写父类方法,可应用自己的逻辑实现需求

5.Java三大特性?

1.封装:可将某个类进行封装,对外提供get\set方法

2.继承:子类继承父类,在父类原有的代码上进行扩展,提高代码的复用性和拓展性

3.多态:引用变量指向不同类的实例,可通过继承(多个子类对同一方法的重写)和实现接口实现多态

6.你了解Java集合吗?

Java集合主要有两个大类,Collection和Map,Collection包含List接口和Set接口

Collection :

List:ArrayList、LinkedList、Stack等

Set:HashSet、TreeSet等

Map:

HashMap、TreeMap、Hashtable、ConcurrentHashMap

7.请说一下Map中各个实现类的区别?

HashMap:以key-value对进行存储的数据结构,底层为数组+链表\红黑树,非线程安全

Hashtable:底层数据结构为数组+链表,内部方法大多经过synchronized修饰,线程安全,性能偏低

ConcurrentHashMap:底层数据结构为Node数组 + 链表/红黑树,利用CAS自旋锁+synchronized保证线程安全

8. 你看过HashMap的源码吗?

我看过HashMap的put方法的源码,HashMap的put操作是利用hashcode()方法计算出key的hash值,将hash值与数组长度-1 取模得到存放的索引index,若该index上为空,则直接进行put操作,若有值,则利用equals()判断该值与key是否相同,相同则说明是同一个key,直接进行覆盖,若不同则发生哈希碰撞,采用链表进行存储,若链表超过一定长度,则转换为红黑树来提高查询性能

9.请说一下ArrayList和LinkedList的区别

ArrayList:底层是一个object[]数组,支持快速随机访问

LinkedList:底层是一个双向链表,不支持随机访问

10.SpringMVC有了解吗?

SpringMVC是一种三层架构的设计思路,M-模型层,V-视图层,C-控制层

SpringMVC的工作流程为:

1.用户发起请求

2.DispatchServlet接收用户请求,通过处理器映射器HandlerMapping找到对应的Controller

3.执行Controller的业务代码并返回ModelAndView给DispatcherServlet

4.DispatcherServlet解析视图,进行视图渲染,将模型数据填充到request域,返回response响应

11.SpringIOC和AOP有了解吗?

IOC-控制反转,是一种设计思想,将创建对象的控制权交由spring管理,IOC容器是Spring实现IOC的载体

AOP:面向切面编程,将公共业务比如日志进行封装,减少重复代码,降低模块间的耦合度,是基于动态代理的,若代理对象实现了接口,则使用JDK动态代理,否则使用Cglib动态代理

12.创建线程池的参数?

没答上来

13.MySQL的连接查询方式?

当时只回答了 Left Join、Right Join、Inner Join

14.Left Join 、Right Join和Inner Join有什么区别?

这方面确实没仔细学习,当时只回答了 left join 是左表驱动右表、right join是右表驱动左表、inner join是Mysql自行选择小表来驱动大表(显然面试官并不是想问这个)

反问环节

总体来说,面试难度较易,几乎没有问到项目,90%都为八股,面试官比较和善,没有太大压力,最后也是耐心举例子告诉我MySQL各种连接的区别

#我的实习求职记录#
全部评论
老哥,你现在找到工作了吗
点赞 回复 分享
发布于 2023-05-31 13:40 湖南
在哪投的呀 base哪
点赞 回复 分享
发布于 2023-04-20 01:38 广东
我也是北大软件 兄弟 广州的面试 挖我的项目了 我挂了
点赞 回复 分享
发布于 2023-04-18 11:11 湖南
一共几面
点赞 回复 分享
发布于 2023-04-18 09:27 青海
实习嘛
点赞 回复 分享
发布于 2023-04-17 20:09 湖北

相关推荐

刚刷到字节跳动官方发的消息,确实被这波阵仗吓了一跳。在大家还在纠结今年行情是不是又“寒冬”的时候,字节直接甩出了史上规模最大的转正实习计划——ByteIntern。咱们直接看几个最硬的数,别被花里胡哨的宣传词绕晕了。首先是“量大”。全球招7000多人是什么概念?这几乎是把很多中型互联网公司的总人数都给招进来了。最关键的是,这次的资源分配非常精准:研发岗给了4800多个Offer,占比直接超过六成。说白了,字节今年还是要死磕技术,尤其是产品和AI领域,这对于咱们写代码的同学来说,绝对是今年最厚的一块肥肉。其次是大家最关心的“转正率”。官方直接白纸黑字写了:整体转正率超过50%。这意味着只要你进去了,不划水、正常干,每两个人里就有一个能直接拿校招Offer。对于2027届(2026年9月到2027年8月毕业)的同学来说,这不仅是实习,这简直就是通往大厂的快捷通道。不过,我也得泼盆冷水。坑位多,不代表门槛低。字节的实习面试出了名的爱考算法和工程实操,尤其是今年重点倾斜AI方向,如果你简历里有和AI相关的项目,优势还是有的。而且,转正率50%也意味着剩下那50%的人是陪跑的,进去之后的考核压力肯定不小。一句话总结: 27届的兄弟们,别犹豫了。今年字节这是铁了心要抢提前批的人才,现在投递就是占坑。与其等到明年秋招去千军万马挤独木桥,不如现在进去先占个工位,把转正名额攥在手里。
喵_coding:别逗了 50%转正率 仔细想想 就是转正与不转正
字节7000实习来了,你...
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
11
45
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务