面试__八股

Java八股文面试题 Java基础八股文(背诵版) 阅读详情

java

解释执行,即时编译(编译成本地代码,效率高,内存占用多,C1,C2)
编译优化技术:方法内联,复写传播,无用代码删除
字节码就是虚拟机所使用的指令集
类加载:加载(获取类的二进制流文件,方法区的数据结构,内存生成这个类的class对象),链接(验证,准备(类变量初始化),解析(符号引用替换为直接引用)),初始化(常量初始化)

栈帧主要是局部变量区和操作数栈,方法返回地址,对象头的mark word;关系是通常将局部变量区加载到操作数栈,运算结束后放回局部变量区
对象组成:对象头(运行时的数据,即(mark word,hashcode,锁状态,gc分代年龄 ,重量级锁指向的monitor对象的指针 ) ,类型指针(方法区的类信息)),实例数据,填充数据

虚拟机优化:方法内联,逃逸分析(对象被外部访问(标量替换,将对象的创建替换成为多个成员变量的创建)或其他线程访问(同步省略,锁消除)),本地方法调用,代码优化(循环)
动态绑定和静态绑定:编译期和运行期,动态绑定运行时根据具体对象的类型进行绑定,多态继承等使用,用到了方法表
线程 -> 栈帧的局部变量区 -> 指向堆中对象,对象头部的类型指针->指向方法区的class文件
实现线程主要有3种方式:使用内核线程实现(Windows版与Linux版)、使用用户线程实现和使用用户线程加轻量级进程混合实现。
线程池:《corePoolSize,即使有空闲线程也要创建新的,然后再加入队列中,队列满了才会用到maxPoolSize;再满了用拒绝策略,超过corePoolsize的线程空闲超过keepAliveTime被回收
join基于wait实现,作用是等待子线程执行完再执行主线程,yield是放弃当前cpu时间片

方法区:方法区jdk8之前的实现是永久代,8之后迁移到元空间,替换永久代,字符串常量池容易溢出,永久代大小不好确认,gc回收效率低,元空间使用本地内存,存储类信息,常量,静态变量,即时编译器编译后的代码等
线程池:统一管理,线程数量多少,否则数量多了上下文切换慢,有队列等功能;线程占用资源多,重量级的资源,new代价比较大;有更多功能,并发数,单线程,定期执行等功能
问题:1:Executors默认的无界队列,线程饥饿,队列长度不要过长导致资源耗尽,大量使用线程池导致资源不足,且线程长时间等待,要用new threadPoolExecutor
2:拒绝策略:线程丢失,别人的代码拒绝策略改了没抛出异常,导致线程丢失没日志
线程通信:wait/notify,lock/Condition(CountDownLatch,Semaphore都是通过aqs实现的),共享内存(volatile),synchronized
注解:使用,aop,注解不生效;作用方法,生命周期;注解中方法在使用注解出后面的参数

juc 并发的原子类、集合、锁、tool(countdownlatch和CyclicBarrier)、线程池相关(Future,Executor)
高并发的思路:扩容,拆分,熔断,降级,限流(计数器,漏桶,令牌桶,ratelimit,redis),缓存,队列,数据库(主从,分库分表,拆分)
java内存模型:从主内存到工作内存(线程私有)
线程安全性:原子性(atomic包和锁),可见性(锁,volatile,保证读写前后主内存和工作内存的值是新的),有序性(volatile和锁,happens-before,阐述两个线程间的可见性)
方法:final,线程安全的类,并发容器
juc
同步组件:countdownlatch和CyclicBarrier,信号量,锁;
其他组件,fork/join,blockingqueue,线程池

收集器:serial/serial old 单线程,parNew(serial的多线程版本),parallel scavenge/parallel old(类似parNew,注重吞吐量),CMS
G1相对CMS:可预测时间,非连续的空间,小空间,空间整理,并发完成大部分gc
Full GC,清理整个堆的GC事件,包括新生代、老年代、元空间等(老年代标记整理)
触发场景:1,当老年代无法

后端面试八股文骚套路之Java基础 一年一度的秋招大戏又快拉开序幕了,近年来后端岗位越来越卷,毕业生的压力也越来越大。个人感觉目前各个大中厂校招面试不好的地方是,都在朝着背面试八股文的方向发展(曾经面试某二线厂,对着面试官纯背了 40 分钟概念),但不得不承认这也是企业在短时间内筛选面试者的一个重要手段。 为了帮助大家了解后端面试八股文应该怎么背,特此推出面试八股文画重点系列(包含的内容有 Java 基础、JVM、MySQL、Redis、操作系统、计算机网络、设计模式)。希望能帮助到 Java 基础不是很好的同学能快速的准备好面试八股文。. 阅读详情

相关推荐

最新2023整理Java面试八股文,大厂必备神器

那么,为什么在计算机技术相关岗位面试中,存在“八股文”内容的测评呢?国内的互联网面试,恐怕是现存的、最接近科举考试的制度。我国的八股文确实是独树一帜。以美国为例,北美工程师面试比较重视算法(Coding),近几年也会加入Design轮(系统设计和面向对象设计OOD)和BQ轮(Behavioral question,作为面试问题)。

Java架构师之路的博客 2516

2025 Java 面试八股文(20w 字)

(3)@EnableConfigutarion:最关键的一个注解,他拥有两个子注解,其中@AutoConfigurationpackageu会将启动类所在包下的所有组件到容器中,@Import会导入一个自动配置文件选择器,他会去加载META_INF目录下的spring.factories文件,这个文件中存放很大自动配置类的全类名,这些类会根据元注解的装配条件生效,生效的类就会被实例化,加载到ioc容器中。(3)分片集群:主从模式和哨兵模式解决了并发读的问题,但没有解决并发写的问题,因此有了分片集群。

tangjieqing的博客 2252

Java面试八股文真的有必要去背吗?

前言 2022春招即将来临,很多同学会问Java面试八股文有必要背吗? 我的回答是:很有必要。你可以讨厌这种模式,但你一定要去背,因为不背你就进不了大厂。 国内的互联网面试,恐怕是现存的、最接近科举考试的制度。 而且,我国的八股文确实是独树一帜。以美国为例,北美工程师面试比较重视算法(Coding),近几年也会加入Design轮(系统设计和面向对象设计OOD)和BQ轮(Behavioral question,行为面试问题)。 那么为什么国内面试不采取这样的考察方式呢?简单来说,互联网IT行业的求职者太多了,

spring_cgmx9880的博客 2172

PaddleOCR实战:DBnet++与DBnet模型训练全流程解析

本文详细解析了基于PaddleOCR框架的DBnet与DBnet++文字检测模型的完整训练流程。从环境配置、数据集准备、配置文件解读,到模型训练、评估调参及最终推理部署,提供了实战指南。重点对比了DBnet++与DBnet在精度、速度及适用场景上的差异,帮助开发者高效构建定制化的OCR检测模型。

weixin_29038155的博客 333

电容式麦克风:从原理到实际电路波形解析

本文深入解析电容式麦克风的工作原理,从核心的振膜与背板结构、电荷锁定机制到场效应管放大器的作用。通过实物拆解与等效电路分析,阐明声音振动如何转换为电压信号,并指导如何用示波器实测波形,直观展现声电转换过程,适合电子爱好者和音频技术学习者。

Black的专栏 1079

LaTeX小白必看:5分钟搞定GB/T 7714-2005参考文献格式(Texmaker+BibTeX实战)

本文为LaTeX初学者提供了使用Texmaker编辑器和BibTeX工具链,快速实现GB/T 7714-2005参考文献格式的实战指南。文章详细解析了从获取gbt7714-2005.bst样式文件、编写.bib数据库到四步编译流程的核心步骤,并附有常见问题解决方案,帮助用户高效、准确地完成学术论文的参考文献排版。

weixin_29295541的博客 338

基于STM32L4XX、HAL库的AD7124-8BCPZ模数转换器ADC驱动程序设计

/ 公式: Voltage = (adc_value / (2^23 - 1)) * Vref。// 模式控制位[7:5]=000 (连续转换模式)// 3.2 配置通道0,使其使用AIN0(+)和AIN1(-),并关联到配置0和滤波器0。= 0x14) { // AD7124-8的ID是0x14。// 双极性操作,缓冲AINP/AINN。

zhusl6688的博客 376

PON架构(全光网络)

目前组网架构世界上有一种最快的速度又是光,以前传统以太网络规划满足不了现在的需求。有线网 无线网 全光网络方案场景 全光网络分类 以太全光网络 PON(Pas-sive-Optical Network 无源光网络) 再典型的中大型高校网络中 推荐万兆入室 千兆到桌面的带宽设计 一般三层 (终端-接入层-汇聚层-核心层-出口(安全设备)-互联网) 单校区核心设备 一般采用两台高性能的核心交换机 双机的方式采用的是 M-LAG 多校区之间核心交换机采用1

qq_56248592的博客 6268

姿态传感器/陀螺仪之LSM6DS3TR-C应用原理图设计

LSM6DS3TR-C是一款由意法半导体(STMicroelectronics)推出的高性能、低功耗的惯性测量单元(IMU),集成了3轴加速度计和3轴陀螺仪,用于测量加速度、角速度以及设备的姿态和运动。

corlin6688的博客 871

Simulink实例--电动汽车充电站与微电网协同运行仿真

​电网负荷剧增:单站1000台车同时充电需150MW功率(超配电网容量30%)​能源孤岛问题:传统充电站仅作为单向负荷,无法参与电网调频​可再生能源消纳:光伏/风电波动导致充电站功率波动±40%​多目标矛盾:充电效率、电网稳定性、设备寿命的协同优化​节能效果:每百万辆车年节电1.8GWh​成本回收:投资回报周期<4年(IRR>25%)​减排效益:每年减少CO₂排放12万吨。

xiaoheshang_123的博客 330

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: docker和虚拟机对比
下一篇: 面试__编程
big muscle
博客等级 码龄11年 145粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值