![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
文章平均质量分 64
一个不可泄露的身份
人间不值得,不如自娱自乐
展开
-
Java基础核心
HashMap和ConcurrentHashMap由于HashMap是线程不同步的,虽然处理数据的效率高,但是在多线程的情况下存在着安全问题,因此设计了CurrentHashMap来解决多线程安全问题。HashMap在put的时候,插入的元素超过了容量(由负载因子决定)的范围就会触发扩容操作,就是rehash,这个会重新将原数组的内容重新hash到新的扩容数组中,在多线程的环境下,存在同时其他的元素也在进行put操作,如果hash值相同,可能出现同时在同一数组下用链表表示,造成闭环,导致在get时会出现原创 2020-05-11 23:31:46 · 158 阅读 · 0 评论 -
JVM详解
JVM运行时数据区域程序计数器:程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。是线程私有”的内存。Java虚拟机栈:与程序计数器一样,Java虚拟机栈(Java Virtual Machine Stacks)也是线程私有的,它的生命周期与线程相同。虚拟机栈描述的是Java方法执行的内存模型:每个方原创 2020-05-11 22:33:48 · 217 阅读 · 0 评论 -
mysql相关的一些知识
SQL的执行顺序:from—where–group by—having—select—order byMVCC,redolog,undolog,binlogundolog,也就是常说的日志回滚文件,主要用于事务执行失败进行回滚,以及MVCC中对于数据历史版本的查看。由InnoDB引擎实现,是逻辑日志,记录数据修改之前的值,比如“id=8”修改为“id=81”,那么undolog就会存放“id=8”的记录。当一个数据需要修改,那么就会把修改前的记录存储在undolog中,如果修改出现异常,那么就会使原创 2020-05-11 18:11:56 · 162 阅读 · 0 评论 -
网络协议,http,tcp,udp补充
浏览器中输入:“www.xxx.com”都发生了什么?经典的网络协议问题;1.由域名——IP地址2.建立TCP/IP连接(三次握手的具体过程)3.由浏览器发送一个HTTP请求4.经过路由器转发,通过服务器的防火墙,该HTTP请求到达了服务器5.服务器处理该HTTP请求,返回一个HTML文件6.浏览器解析HTML文件,并且显示在浏览器端。这里需要注意:HTTP协议是一种基于TCP/IP的应用层协议,进行HTTP数据请求必须先建立TCP/IP连接;可以理解为:HTTP 是轿车,提供了封装或者原创 2020-05-10 22:31:07 · 151 阅读 · 0 评论 -
什么是JVM,知识点
JVM内存划分方法区(线程共享):常量、静态变量、JIT(即时编译器) 编译后的代码也都在方法区;堆内存(线程共享):垃圾回收的主要场所;程序计数器: 当前线程执行的字节码的位置指示器;虚拟机栈(栈内存):保存局部变量、基本数据类型变量以及堆内存中某个对象的引用变量;本地方法栈 :为 JVM 提供使用 native 方法的服务。类似-Xms、-Xmn 这些参数的含义:答:堆内存分配:JVM 初始分配的内存由-Xms 指定,默认是物理内存的 1/64;JVM 最大分配的内存由-Xmx原创 2020-05-10 19:48:57 · 140 阅读 · 0 评论 -
Java集合、多线程知识点补充
Java中Map和Collection接口是所有集合框架的顶接口;Collection接口下有Set接口、List接口;Set接口主要实现类:HashSet、TreeSet、LinkedHashSet等;List接口主要实现类:ArrayList、LinkedList、Stack、Vector等Map接口下是实现类:HashMap、TreeMap、HashTable、ConcurrentHashMap;ConcurrentHashMap和HahsTable的区别?我们要先知道HashMap和Ha原创 2020-05-10 11:56:15 · 149 阅读 · 0 评论 -
Java基础知识点补充
面向对象的特性有哪些?封装、继承、多态Java中覆盖和重载是什么意思?覆盖(Override)是指子类对父类方法的一种重写,只能比父类抛出更少的异常,访问权限不能比父类小。被覆盖的方法不能是private,否则只能在子类中重新定义了一个方法;重载(Overload)表示同一个类中可以有多个名称相同的方法,但方法的参数列表各不相同。重载的条件?参数类型、个数、顺序不同;返回值不同不可以够成重载抽象类和接口的区别?抽象...原创 2020-05-09 16:28:40 · 106 阅读 · 0 评论 -
一些Java面试题,无答案,复习必备
1HashMap和HashTable区别HashMap实现原理(put、resize)StringBuffer和StringBuilder区别数据库事务隔离级别如何避免幻读数据库引擎(Innodb)的事务支持粒度如何实现乐观锁Synchronized实现原理tcp三次握手,四次回首osi7层模型最后问了两个智力题:两个粗细不均匀、长短不一的的绳子,燃烧一根分别需要60分钟,...原创 2020-05-07 18:02:30 · 329 阅读 · 0 评论 -
第一次面试题
String、StringBuilder和StingBuffer的区别?写一个单例模式写sql语句,多对多(学生表、选课表、课程表)给一个字符串,一个切割数,切割字符串,且汉字不能切一半讲几种数据结构及特点HashTable和HashMap的区别String str=new String(“xyz”)建了几个String Object怎么理解面向对象...原创 2020-05-02 23:28:43 · 202 阅读 · 0 评论 -
Java经典面试题十:Spring/Spring MVC
问题一:为什么使用Spring?Spring是一个轻量级的控制反转(IOC)和面向切面编程(AOP)的容器框架,使用基本的JavaBean代替EJB(企业Java Beans),并提供了很多的企业应用功能,解决了企业应用开发的复杂性。主要优点:轻量:spring框架的大小可以在只有1M多的JAR文件里发布,而且所需开销也很小。spring是非侵入式的,spring应用中的对象不依赖于sp...原创 2020-04-19 19:36:14 · 487 阅读 · 0 评论 -
Java经典面试题九:设计模式
问题一:单例模式就是一个应用程序中,某个类的实例对象只有一个,没有办法去new,因为构造器是被private修饰的,一般通过getInstance()方法来获取实例。getInstance()方法的返回值是对象的引用,并不是一个新的实例。单例式写法:懒汉写法(线程不安全)public class Singleton {private static Singleton sing...原创 2020-04-18 23:43:34 · 247 阅读 · 0 评论 -
Java经典面试题:网络
问题一:http响应码301和302代表什么?有什么区别?官方的文档:301:被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干UOI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。302:请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续...原创 2020-04-18 14:58:12 · 175 阅读 · 0 评论 -
Java经典面试题七:异常
问题一:throw和throws的区别?throws是声明一个方法可能抛出的所有异常信息,并将异常向上传递,谁调用该方法异常就交给谁处理。throw是在方法内抛出某种异常,抛出一个具体的异常类型。问题二:final、finally、finalize有什么区别?final修饰类、变量、方法,修饰类该类不能被继承,修饰方法该方法不能被重写,修饰变量该变量不能被重写赋值;finally一...原创 2020-04-17 23:43:15 · 168 阅读 · 0 评论 -
Java经典面试题六:Java Web
问题一:jsp和servlet有什么区别?Servlet(Server Applet)是Java Servlet的简称,称为小服务程序,主要功能在于交互式地浏览和生成数据,生成动态web内容。jsp经过编译后就变成了Servlet...原创 2020-04-16 22:15:13 · 480 阅读 · 0 评论 -
Java面试题五:对象的拷贝
问题一:为什么要使用克隆?在对一个对象进行处理,又想要保留原有的数据进行接下来的操作。克隆针对的是类的实例。问题二:如何实现对象克隆?实现Cloneable接口,重写clone()方法;clone方法是浅拷贝,即如果类中属性有自定义的引用类型,只拷贝引用,不拷贝引用指向的对象。2.实现Serializable接口,完成深拷贝;基于序列化实现的克隆不仅仅是深度克隆,更重要是通过泛型限...原创 2020-04-15 16:18:43 · 167 阅读 · 0 评论 -
Java经典面试题四:反射
问题一:什么是反射?反射主要是指程序可以访问、检测和修改它本事状态或行为的一种能力。在Java反射中,可以知道任意一个类有哪些属性,哪些方法,可以调用它的任意一个方法 ;Java反射机制主要提供以下几个功能:在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类具有的成员变量和方法;在运行时调用任意一个对象的方法。问题二:什么是Java序列化?什...原创 2020-04-13 17:45:17 · 203 阅读 · 0 评论 -
Java经典面试题三:多线程
问题一:并行和并发的区别?答:并行是两个或多个事件同一时刻发生;并发是两个或多个事件在同一时刻间隔发生。并行是不同实体上的多个事件,并发是同一实体上的多个事件。并发在一台处理器同时处理多个任务,并行在多台处理器同时处理多个任务。所以并发编程的目的是充分利用处理器的每一个核。问题二:线程和进程的区别?答:进程是程序运行和资源分配的基本单位,一个程序至少有一个进程,一个进程至少有一个线程。...原创 2020-04-12 23:28:33 · 230 阅读 · 0 评论 -
Spring的事务传播,简单易懂
先上详细介绍PROPAGATION_REQUIRED–支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。PROPAGATION_SUPPORTS–支持当前事务,如果当前没有事务,就以非事务方式执行。PROPAGATION_MANDATORY–支持当前事务,如果当前没有事务,就抛出异常。PROPAGATION_REQUIRES_NEW–新建事务,如果当前存在事务,把当前事务挂...原创 2020-04-09 16:13:36 · 130 阅读 · 0 评论 -
JVM的五大分区
五大分区是jvm运行时的数据区,是描述类加载时,经过解析储存到特定的数据区。先说五大分区分别是:程序计数器、虚拟机栈、本地方法栈、堆、方法区;其中前三个区是线程私有的,用来处理程序允许时的问题;后两个区是线程共享的,处理数据存储问题。 二者分别处理不同的问题,所以才会有堆栈分离。方法区和堆一样,是所有线程共享的内存区域,可以动态扩展。用来存储类的信息,如:方法、方法名、返回值、常量等。当方法区...原创 2020-04-09 13:42:35 · 2705 阅读 · 0 评论 -
Java中“堆”,“栈”,“堆栈”,“队列”是什么?又有什么区别?
总的来说呢,它们都是数据结构,只能在一端对数据进行操作,比如删除插入啊。不同的是:堆呢顺序是随意的,可以看作一棵树的数组对象,是一颗完全二叉树(也是一种数据结构,节点做多有两个子树),是在程序运行时开辟一块动态内存空间。而栈又叫“堆栈”,是一种使用堆的“方法”,遵循后进先出,先进后出的原则,像水桶一样。栈是在进行一个进程是为其建立的存储区域。二者区别空间分配栈一般由操作系统自动分配释放...原创 2020-04-08 23:40:26 · 347 阅读 · 0 评论 -
理解Java的native方法
native方法,就是本地方法,首先要知道java的底层就是用c写的,Java虽然优点很多,但是不能访问操作系统底层,像JVM是和操作系统进行交互(记忆中应该是)。所以java有个JNI,Java native interface,实现Java对底层的访问。JNI允许Java使用其他编写代码,也允许本地代码调用Java。说明native修饰的方法不是Java语言写的而是本地语言,只是Java可以...原创 2020-04-08 22:54:22 · 252 阅读 · 0 评论 -
Java经典面试题一:Java基础
(本文章只是为了巩固自己,侵删)问题一:JDK和JRE有什么区别?答:JDK是Java Development Kit的简称,Java开发工具包,提供了java的开发环境和运行环境。JRE是Java Runtime Environment的简称,Java运行环境,为Java的运行提供所需环境。JDK=JRE+Java工具JRE=JVM+java系统类库其实JDK还包含了很多,有JRE,...原创 2020-04-02 15:49:15 · 287 阅读 · 0 评论 -
Java经典面试二:java的容器
问题一:Java有哪些容器?Java集合主要包括两种类型的容器,一种是集合(Collection),一种是Map,存键值对。Collection接口有三种子类型,List,Set,Queue(队列),再下面是一些抽象类,然后是具体的实现类,常见ArrayList、LinkenList、HashSet、LinkedHashSet、HashMap、LinkedHashMap等。list接口存储不...转载 2020-04-02 21:33:04 · 182 阅读 · 0 评论