java面试题总结

zengnansheng zengnansheng     2023-03-09     799

关键词:

事务的ACID是指什么

原子性(Atomic):事务中各项操作,要么全做要么全不做,任何一项操作的失败都会导致整个事务的失败;

一致性(Consistent):事务结束后系统状态是一致的;
隔离性(Isolated):并发执行的事务彼此无法看到对方的中间状态;

持久性(Durable):事务完成后所做的改动都会被持久化,即使发生灾难性的失败。通过日志和同步备份可以在故障发生后重建数据。

 

抽象类和接口的区别

a.一个类只能继承单个类,但是可以实现多个接口

b.抽象类中可以有构造方法,接口中不能有构造方法

c.抽象类中的所有方法并不一定要是抽象的,你可以选择在抽象类中实现一些基本的方法。而接口要求所有的方法都必须是抽象的

d.抽象类中可以包含静态方法,接口中不可以

e.抽象类中可以有普通成员变量,接口中不可以

 

 

访问修饰符public,private,protected,以及不写(默认)时的区别?

修饰符当前类同 包子 类其他包
public
protected×
default××
private×××
String和StringBuilder、StringBuffer的区别?

 String和StringBuffer/StringBuilder,它们可以储存和操作字符串。其中String是只读字符串,也就意味着String引用的字符串内容是不能被改变的。

而StringBuffer/StringBuilder类表示的字符串对象可以直接进行修改。StringBuilder是Java 5中引入的,它和StringBuffer的方法完全相同,区别在于它是在单线程环境下使用的,因为它的所有方面都没有被synchronized修饰,因此它的效率也比StringBuffer要高

 

Java 中的final关键字有哪些用法?

(1)修饰类:表示该类不能被继承

(2)修饰方法:表示方法不能被重写

(3)修饰变量:表示变量只能一次赋值以后值不能被修改(常量)

 

阐述final、finally、finalize的区别

- final:修饰符(关键字)有三种用法:如果一个类被声明为final,意味着它不能再派生出新的子类,即不能被继承,因此它和abstract是反义词。将变量声明为final,可以保证它们在使用中不被改变,被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取不可修改。被声明为final的方法也同样只能使用,不能在子类中被重写。
- finally:通常放在try…catch…的后面构造总是执行代码块,这就意味着程序无论正常执行还是发生异常,这里的代码只要JVM不关闭都能执行,可以将释放外部资源的代码写在finally块中。
- finalize:Object类中定义的方法,Java中允许使用finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在销毁对象时调用的,通过重写finalize()方法可以整理系统资源或者执行其他清理工作。

 

启动一个线程是调用run()还是start()方法?

 启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM 调度并执行,这并不意味着线程就会立即运行。run()方法是线程启动后要进行回调(callback)的方法。

 

简述synchronized 和java.util.concurrent.locks.Lock的异同

Lock是Java 5以后引入的新的API,和关键字synchronized相比

主要相同点:Lock 能完成synchronized所实现的所有功能;

主要不同点:Lock有比synchronized更精确的线程语义和更好的性能,而且不强制性的要求一定要获得锁。synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且最好在finally 块中释放(这是释放外部资源的最好的地方)

 

java经典面试题总结

Java经典面试题总结继续更新,有需要的小伙伴可以路过不要错过了!看上一篇面试题总结的反响还是很不错的,就继续更新了,也非常感谢各位小伙伴的持续关注……这次更偏基础一些!1、String和StringBuffer的区别?答:JAVA平台... 查看详情

java面试题全集(上)(中)(下)(转)+自己总结

Java面试题自己总总结https://www.cnblogs.com/songanwei/p/9366427.htmlJava面试题全集(上)https://blog.csdn.net/jackfrued/article/details/44921941 Java面试题全集(中)https://blog.csdn.net/jackfrued/article/details/449311 查看详情

java开发基础面试题,java研发工程师年终总结

Spring面试高频问题SpringMVC面试高频问题MyBatis面试高频问题SpringBoot面试高频题SpringCloud面试高频问题Redis高级面试题Dubbo高频常问面试问题Java虚拟机(JVM)MySQL数据库高频面试问题Java高频面试专题合集解析:当然在这还... 查看详情

java经典面试题总结

上一次更新的java面试题,很多小伙伴反应很简单,其实上一期更新的就是更偏基础的面试题,但这并不意味着,面试就这么简单,在java的学习中,有从Java基础、框架、设计模式等等都是重点学习的点。在本文的面试题分享中,... 查看详情

java经典面试题总结

今天总结的是java框架相关的面试题,有需要的可以继续拿去了。1、J2EE是什么?答:J2EE是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型(enterprieseapplicationmodel).在这样的一个应用系统中,... 查看详情

java相关面试题总结

本文分为十九个模块,分别是: Java基础、容器、多线程、反射、对象拷贝、JavaWeb、异常、网络、设计模式、Spring/SpringMVC、SpringBoot/SpringCloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM ,如下图所示:【Java... 查看详情

java线程面试题总结2022

...篇:线程池原理解析第七篇:并发编程归纳总结Java线程面试题总结2022一、sychronied修饰普通方法和静态方法的区别?什么是可见性?二、锁分为哪几类。三、CAS无锁编程的原理。四、ReentrantLock的实现原理。五、AQS原理。 查看详情

java经典面试题总结

不知不觉中,已经将面试题更新了好几篇了,庞大的java面试题库,想要刷完似乎不大可能,需要一点一点的积累。1、java中会存在内存泄漏吗,请简单描述。答:会;存在无用但可达的对象,这些对象不能被GC回收,导致耗费内... 查看详情

java常考面试题总结(代码片段)

列出一些你常见的运行时异常?答:常见的几种运行时异常如下:ArithmeticException(算术异常)ClassCastException(类转换异常)IllegalArgumentException(非法参数异常)IndexOutOfBoundsException(下表越界异常)NullPointerException(空指针异常... 查看详情

java相关面试题总结+答案

【JVM】194.说一下JVM的主要组成部分?及其作用?类加载器(ClassLoader)运行时数据区(RuntimeDataArea)执行引擎(ExecutionEngine)本地库接口(NativeInterface)组件的作用: 首先通过类加载器(ClassLoader)会把Java代码转换成字节码... 查看详情

java经典面试题总结

本期的java面试题是偏向数据库方面的,对相关技术知识匮乏的,或者对这方面不大自信的同学,面试之前可以参考一下这套题,这只是节选,试运营一下,如果不能满足你们的需求,可以直接评论留言!1、视图的优缺点答:优... 查看详情

javascript面试题总结(附答案)-蛙课网

...越多。今天为广大java程序员提供一份常考的java script面试题总结,并附有参考答案,以供有面试需要的java程序员学习使用。1、什么是JavaScript?答:JavaScript是客户端和服务器端脚本语言,可以插入到HTML页面中,并且是目前... 查看详情

java虚拟机(jvm)面试题(2022年总结最全面的面试题!!!)(代码片段)

大家好啊,我是小于哥,Java虚拟无论是在年前面试还是在年后的金三银四面试都是必问的,比如:Java1.8和1.7内存模型有什么差距?堆栈的区别是什么?深拷贝和浅拷贝Java会存在内存泄漏吗?请说明为... 查看详情

java集合面试题看这篇就够了(代码片段)

备战实习,会定期的总结常考的面试题,大家一起加油!🎯往期文章:【面试题】计算机网络篇-10道常见面试题p1【面试题】JVM篇-10道常见面试题p1【面试题】Java并发篇-10道常见面试题p1【面试题】Java基础篇-... 查看详情

javase面试题总结

 目录第一章初识Java11.Java跨平台原理(字节码文件、虚拟机)12.Java的安全性13.Java三大版本24.Java开发运行过程25.Java开发环境配置26.什么是JVM?什么是JDK?什么是JRE?27.Java三种注释类型3第二章数据类型和运算符41.8种基本数据... 查看详情

java集合面试题总结

文章目录集合类常见面试题总结1、Java中常见的集合2、容器中那些那些是线程安全的,那些不是线程安全的线程不安全线程安全3、Map接口的实现类4、Map的put过程(源码分析)5、得到一个线程安全的Map的方法6、HashMap的特点7、Jd... 查看详情

面试题收集最新

Java高级工程师面试题总结及参考答案-----https://www.cnblogs.com/java1024/p/8594784.htmlJava高级程序员(5年左右)面试的题目集----https://blog.csdn.net/fangqun663775/article/details/73614850/Java中关于高级面试题的总结-------https://www.2cto.com/ 查看详情

java程序员面试题大全含答案(2018--2019)

java程序员面试题大全含答案(2018--2019)1、10道经典java面试题_实习生必问!2、15个Java线程并发面试题和答案3、15个高级Java多线程面试题及回答4、2018年java分布式相关最新面试题5、2018最新java技术面试题与答案6、4个Spring常见面... 查看详情