天呐!java基础面试题及答案整理

2023-11-21 03:30

本文主要是介绍天呐!java基础面试题及答案整理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

选择

在现在这个浮躁而又拜金的社会,我相信很多人做技术并非出于热爱,只是被互联网的高薪吸引,毕竟技术岗位非常枯燥,不仅要面对奇奇怪怪的需求,还要不停的充实自己避免被淘汰。所以想要吃好技术这碗饭并不容易。

我一直在思考,我喜欢什么,我适合什么,我应该从事什么岗位。我的前同事东哥和我境遇相似,只是他比我毕业早了差不多十年,毕业之后读了在职硕士,有近三年没有休过周末,这一点我很佩服。

选择的重要性不言而喻,如果方向错了,再努力也是徒劳。回首走过的这几年,我自认为我在关键的节点做出了还算正确的选择。我身边有很多对职业发展迷茫的朋友,并不是每个人都有那么好的运气和毅力,很多人依然是在抱怨中继续做着不喜欢的工作。

在我后来做面试官的时候,我接触过很多开发者。有自学转行,也有培训之后转行,但是大多都是盲目选择,并不知道自己真正适合什么,所以工作几年,依然没有太多的亮点。

自律

自律对技术人员的成长很重要。每个技术人员都要知道在什么时间该做什么事情,该看书的时候看书,该放手的时候放手。正如前文提到的,当你选择了技术行业,那么毫无疑问你必须约束自己,我们的时间是有限的,所以不可能有太多的时间去打王者,或者去刷抖音。

前段时间,我的一个发小向我吐露心事,毕业两年,依然浑浑噩噩,看不到未来,打算学习技术。我告诉他,先把基础书籍刷一遍,如果能坚持看下去,那么找一份技术相关的岗位并不难,如果看不进去,那还是算了吧,即使侥幸找到工作,天花板也是有限的。最近,我的这位发小告诉我他已经放弃了。

我一直觉得自己在大学并没学多少东西,只是学会了忍耐,磨练了意志力。在无聊烦躁的时候可以看看书。

在学生时代,我强迫自己每个假期读两本名著以及坚持绘画。现在,我强迫自己每月写一篇文章或者翻译一篇文章。

坚持

任何行业都必须坚持才会有所收获,比如我们常常谈论的三万小时定律。然而技术人员应该坚持什么?这取决于你的兴趣。坚持写博客,坚持读技术书籍,坚持做开源项目,坚持答疑解惑等等,可以坚持的东西很多,我们不知道结果如何,但过程本身就足以令人兴奋。坚持的前提是自律,如果无法约束自己,坚持也无从谈起。

刚做技术的时候,我也很迷茫,只是针对性的看一些教程,弥补自己的弱点。那时候我还不知道作为技术人员引以为傲的资本是什么,如果只是按部就班的做业务,难免让人感觉无聊。大学时,我也曾为梦想坚持过,可惜一切都成为泡影,于是我明白了梦想和现实的差别。

忘我

我不知道究竟什么状态才算忘我,或许我也没有经历过。忘我不是不吃不喝,而是对工作的热爱,比如问题不解决就辗转难眠。程序员被认为是远离灯红酒绿的工作狂,大多数时候都与孤独为伴,从前年开始,我变得特别宅,几乎放弃了社交和娱乐活动。

之前做项目的时候曾有过一段时间的疯狂。因业务繁重,每晚差不多十点到家,为了能更快的完成项目的第一版,回家之后还要继续工作,凌晨一两点睡觉成为常态,那段时间真的是有点麻木,筋疲力尽。

很多时候我不知道这样做会换回什么,可能依然是一无所有,但是有所坚持总比无所事事要好一些。正如罗曼·罗兰说过的,“生活最大的烦恼不是工作,而是无聊”。

冷静

如果问一个面试官最看重应聘者的哪一方面,我想一定是解决问题的能力。

解决问题需要一种心境,沉着冷静是解决问题的前提。我发现很多人在遇到问题时,立刻就在 QQ 群或者论坛提问,其实都是一些比较基础的问题,这不是一个好习惯。技术人员必须学会独立思考,毕竟大多数情况下只有自己可以拯救自己。不管遇到多难的问题,首先要冷静,然后慢慢分析问题的原因。说一些我常用的解决问题的方法。

一、睡前思考。 躺在床上闭上双眼,回顾一遍遇到的问题,非常管用。记得上初中那会儿,我喜欢在睡觉之前或者上学的路上解几何题,有趣的是,往往都能得到答案。刚工作时,我还有个怪癖,喜欢在解决问题之后大吼一声甚至手舞足蹈,想要释放一种压力。所以每次遇到问题,我总是告诉自己,明天这个时候我就会大吼一声,真是有点好笑。
二、学会放松。 说一件自豪的事情,大学期间,我几乎玩遍了塞班手游,总结出很多道理,其中之一是,任何难闯的关卡在休息一晚之后都可以轻松完成,技术问题往往也是如此。

追求

作为技术人员必须有所追求,比如代码洁癖。林纳斯对不规范的代码总是直言不讳,“你的代码是一坨狗屎”。不知道从什么时候开始,我也有了一点强迫症,DOM 层级,CSS 属性顺序,变量命名,末尾分号,空行等等,差一点就感觉不舒服。

除此之外,不要把工作局限在需求之内,在前东家的时候,技术经理一直强调做点工作之外的事情,申请一些专利,虽然有些面子工程的意思,不过我赞成这种观点。作为前端工程师肯定不能只是写页面,而后端工程师也不应该只是做 CRUD 的工作。

很多人不知道应该追求什么,正如前文提到的,这要看你自己的定位与兴趣,毕竟作为程序员,爱好应该非常广泛。如果你把工作作为兴趣,我觉得也无可厚非,把工作做到极致也是一种追求。

总结

如果现在回答文章开头的问题,我想只要认真做一件事情并坚持下去,或许就会成为引以为傲的资本,即使资本市场再寒冷,我们依然可以从容应对。

最后

这次要给大家分享总结的东西就是这些了

资料全都放在——***我的学习笔记:大厂面试真题+微服务+MySQL+Java+Redis+算法+网络+Linux+Spring全家桶+JVM+学习笔记图***

最后再分享一份终极手撕架构的大礼包(学习笔记):分布式+微服务+开源框架+性能优化

ip204888/java-p7)***

最后再分享一份终极手撕架构的大礼包(学习笔记):分布式+微服务+开源框架+性能优化

image

这篇关于天呐!java基础面试题及答案整理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/399505

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

javacv依赖太大导致jar包也大的解决办法

《javacv依赖太大导致jar包也大的解决办法》随着项目的复杂度和依赖关系的增加,打包后的JAR包可能会变得很大,:本文主要介绍javacv依赖太大导致jar包也大的解决办法,文中通过代码介绍的... 目录前言1.检查依赖2.更改依赖3.检查副依赖总结 前言最近在写项目时,用到了Javacv里的获取视频

Java实现字节字符转bcd编码

《Java实现字节字符转bcd编码》BCD是一种将十进制数字编码为二进制的表示方式,常用于数字显示和存储,本文将介绍如何在Java中实现字节字符转BCD码的过程,需要的小伙伴可以了解下... 目录前言BCD码是什么Java实现字节转bcd编码方法补充总结前言BCD码(Binary-Coded Decima

SpringBoot全局域名替换的实现

《SpringBoot全局域名替换的实现》本文主要介绍了SpringBoot全局域名替换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录 项目结构⚙️ 配置文件application.yml️ 配置类AppProperties.Ja

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC