自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Spring常见面试题

Spring中用到的设计模式 工厂设计模式 比如通过BeanFactory和ApplicationContet来生产Bean对象 代理设计模式 AOP的实现方式就是通过代理模式来实现的,Spring使用的代理模式是JDK动态代理和CGLIB代理 单例设计模式 Spring中Bean默认都是单例的 模板设计模式 Spring中JDBCtemplate等以Template结尾的对数据库操作的类,都会使用到模板设计模式。 包装器设计模式 我们的项目需要连接多个数据库,而且不同的客户在每

2021-12-18 21:55:24 355

原创 java多线程之-java虚拟机是如何实现线程同步的

首先我们要了解java代码先要被执行,首先是被转成一个字节码文件组成的class类。 jvm的内存结构分为:堆,本地方法栈,栈,方法区。 线程和共享数据 每一个线程都享有一个栈内存,其中包括局部变量,线程调用的方法参数和返回值,其他线程无法读取到线程栈的数据。栈中数据只包括对象的引用,所以在jvm无法保证栈重存储的是真实的对象。真的的对象要保存到堆中去。 在jvm中堆的线程是共享的。堆中只有对象,没有其他东西,无法保证基本数据类型的对象的引用。栈的堆分工明确,对象的引用也是对象的一部分。 除了堆和栈,还

2021-12-15 22:47:42 4060

原创 ArrayList源码剖析

ArrayList源码剖析 首先我们先创建一个ArrayList集合,在ArrayList里添加10个数据,使用Dbug来进行调试 //创建ArrayList集合 public class ArrayListDemo02 { public static void main(String[] args) { ArrayList<String> list=new ArrayList<>(); list.add("hello");

2021-12-15 21:24:44 598

原创 java数据结构之树

1)二叉树 1.二叉树的概念: 2.常用术语: 1.节点 2.根节点 3.父节点 4.子节点 5.叶子节点(没有子节点的节点) 6.节点的权(节点的值) 7.路径(从root节点找到该节点的路线) 8.层 9.子树 10.树的高度 11.森林 3.二叉树的前序中序后序遍历 前序遍历: 先输出父节点,在遍历左子树和右子树 中序遍历 先输出左子树,在输出父节点,在输出右子树 后序遍历 先输出左子树,在输出右子树,在输出父节点 4.实现前序中序后序代码 public class BinaryTreeDe

2021-11-20 21:07:48 853

原创 约瑟夫问题(java实现)

环形链表来实现约瑟夫问题 首先我们要是实现一个环形链表 图解! class Boy{ private int id; private Boy next; public Boy(int id) { this.id = id; } public int getId() { return id; } public void setId(int id) { this.id = id; }

2021-11-20 21:02:33 671

原创 java数据结构之数据解压

数据的解压 实现数据压缩的步骤 1.首先将byte数组转换成二级制字符串, 代码实现 /** * 将压缩的数据进行解压 * 1。将数据还原成二进制字符串 * 2. * @param b * @param flag * @return */ public static String byToStr(boolean flag,byte b){ int temp=b; if(flag){

2021-11-20 09:49:38 572

原创 java数据结构之数据压缩

java数据结构之数据压缩 在学习数据压缩算法之前,我们要先要了解一下赫夫曼树,这种数据结构 一,什么是赫夫曼树,如何创建赫夫曼树 1)赫夫曼树介绍 给定n个权值作为n个叶子节点,构造一棵二叉树,若该树的带权路径长度(WPL)达到最小值,这样的二叉树称为最优二叉树,也称赫夫曼树(HuffmanTree),还有书籍翻译为霍夫曼树 赫夫曼树是带权路径长度最短的树,权值较大的节点离根较近 2)创建一颗赫夫曼树,并实现赫夫曼树的遍历 class Node implements Comparable<N

2021-11-19 22:18:00 779 1

原创 初识JVM

请你谈一谈对你对jVM的理解?java8虚拟机和之前的变化跟新 什么是OOM,什么是栈溢出StackOverFlowError?怎么分析? 内存快照如何抓取,怎么分析Dunm文件?知道吗? 谈谈jvm,类加载器你的认识。 通过以上问题,我们开始通过这些问题来进行学习jvm 1.jvm的位置 JRE-jvm时运行性在操作系统的上一个应用程序 通过这张图片就能明白jvm的位置 2.JVM的体系结构 通过...

2021-10-21 22:45:14 256

原创 JUC编程

1.1 CPU底层知识 多线程 什么是进程和线程 一个程序进入内存,被称为进程?一个QQ可以运行多分吗? 同一个进程内部,有多个任务并发执行的需求(比如,一边计算,一边接受网络,一边刷新界面) 能不能使用多进程?可以但是毛病多,最严重的毛病是,我可以轻易搞死别的进程 线程的概念横空出世:共享空间,不共享计算 ​ 进程是静态的概念:程序进入内存分配对应资源:内存空间,程序进入内存,同时产生一个主线程 进程就是资源 线程是动态的概念:是可以执行的计算单元 ,线程共享进程空间 线程就是一条条指令 ​

2021-10-21 22:28:55 151

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除