自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Arthas 应用诊断利器学习及使用(十一) arthas-boot的默认启动过程

Arthas 应用诊断利器学习及使用(十一) arthas-boot的默认启动过程这是我参与更文挑战的第9天,活动详情查看: 更文挑战本文内容基于arthas 3.5.2 版本,介绍arthas-boot的默认启动过程。一.开始使用arthas官网文档中推荐使用arthas-boot.jar的方式来使用arthas。命令如下:curl -O https://arthas.aliyun.com/arthas-boot.jarjava -jar arthas-boot.jar复制代码二.

2021-07-01 16:25:18 704

原创 95% 的算法都是基于这 6 种算法思想

95% 的算法都是基于这 6 种算法思想算法思想是解决问题的核心,万丈高楼起于平地,在算法中也是如此,95% 的算法都是基于这 6 种算法思想,结下了介绍一下这 6 种算法思想,帮助你理解及解决各种算法问题。1 递归算法1.1 算法策略递归算法是一种直接或者间接调用自身函数或者方法的算法。递归算法的实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。递归算法对解决一大类问题很有效,它可以使算法简洁和易于理解。优缺点:优点:实现简单易上手缺点:递归算法对常用的算法如

2021-07-01 16:24:19 431

原创 BAT面试必问:a-b0与ab什么区别?overflow-conscious代码什么玩意?

BAT面试必问:a-b<0与a<b什么区别?overflow-conscious代码什么玩意?读过JDK源码的同学,尤其是读过Collection框架的同学,肯定遇到过下面这种代码:第一次读到这样的代码,你可能跟我一样感到困惑,为什么不直接写成 “newCapacity < minCapacity”,而是更麻烦的"newCapacity – minCapacity < 0"呢?不过,当看到那个注释"overflow-conscious code"之后,你或许明白了一点点,这

2021-06-16 19:53:34 519

原创 42张图,带你真正搞懂redis数据类型的底层

42张图,带你真正搞懂redis数据类型的底层思维导图:我是redis你好,我是 redis一个叫Antirez的男人带我来到这个充满复杂的世界上。聊到我的出生,那跟MYSQL大哥脱不了关系呀,我是来帮助他的,所谓天降猛男redis就是我了,真想对他说:“我还没有来到这个世界上的时候,刚开始挺好的,互联网前期,咱们的用户请求也不多,主要是一些静态网站和小游戏,这 有啥难的 ,MYSQL大哥一个顶俩好吧。但天有不测风云,历史不会停止步伐的。用户请求的数据也随之暴涨,每天用户的 每一次请求

2021-06-16 19:48:32 149

原创 28张图剖析kafka:简直666,狂拽吊炸天

28张图剖析kafka:简直666,狂拽吊炸天Kafka 是主流的消息流系统,其中的概念还是比较多的,下面通过图示的方式来梳理一下 Kafka 的核心概念,以便在我们的头脑中有一个清晰的认识。基础Kafka 是一套流处理系统,可以让后端服务轻松的相互沟通,是微服务架构中常用的组件。生产者消费者: 生产者即 Producer 向 Kafka 发送消息,消费者即Consumer 监听 Kafka 接收消息。一个服务可以既是生产者又是消费者。Topics 主题: Topic 是生产者发送消息的目

2021-06-16 19:47:38 119

原创 2021年全新java架构技术框架Quarkus实战神仙文档

2021年全新java架构技术框架Quarkus实战神仙文档前言Quarkus是一款有别于传统Java架构的新技术框架。它建立在我们熟知的技术栈上,使用了诸多成熟的技术,如JPA、JAX-RS、EclipseVert.x、Eclipse MicroProfile和CDI等,并将这些技术与Kubernetes紧密融合在一起。用户可以借助Kubernetes高效的调度运维能力,最大限度地节约资源。云原生的星星之火,自开源社区的Kubernetes爆红之后,变成燎原之势,随后云原生相关的技术如雨后春笋般涌现

2021-06-16 17:53:38 942

原创 五分钟带你走进Redis并发问题

redis中的并发问题使用redis作为缓存已经很久了,redis是以单进程的形式运行的,命令是一个接着一个执行的,一直以为不会存在并发的问题,直到今天看到相关的资料,才恍然大悟~~具体问题实例有个键,假设名称为myNum,里面保存的是阿拉伯数字,假设现在值为1,存在多个连接对myNum进行操作的情况,这个时候就会有并发的问题。假设有两个连接linkA和linkB,这两个连接都执行下面的操作,取出myNum的值,+1,然后再存回去,看看下面的交互:linkA get myNum => 1li

2021-01-29 16:39:17 187

原创 java培训出来的面试经历

一、背景本人化工专业毕业,专科学历。经过某培新机构转行做java。刚培训出来,经过培训机构的推荐到一家公司就职三个月(转正薪资4k,试用期三个月,每月3.2k,),由于个人原因还没有尝到转正多拿七百块的甜头就离职了,离职之后,刚过完年就离开家乡,到这个我之前都没来过的城市找工作,找了半个月,其中的辛酸经历一言难尽,也不想多说。故事背景大概就是这样。接下来要说的就是在面试过程中的一些经历,希望对和我一样境遇的人有所帮助。二、经过在面试的这半个月里面,通过招聘软件投递了近300多份简历,收到面试邀请的只有

2021-01-21 16:03:21 3487 2

原创 谨以此文纪念我长达半年的Java自学之路(已拿offer)

一、背景20届毕业的双非普通本科,去年考研错过秋招,年初又遇到了疫情没参加春招(惨绝人寰),六月份回学校答辩,草草毕业之后开始了艰难的找工作之旅。我大学学的专业是信息与计算科学,听这个专业名字是不是以为是学计算机的(当年报志愿的我也曾天真的这样以为),结果就是个天坑,每天学数学学到癫狂,什么数学分析、高等代数、常微分方程学到呕吐,编程也学但是真的学得很浅很浅(加上大学光顾着玩儿去了),不自学完全不可能找到工作的那种。所以这样毕业的我真的是屡屡碰壁,当时有人跟我讲:“当你不知道选哪门语言作为自己的开发语言

2021-01-20 16:49:41 476

原创 用最直观的方法教你AVA与DOM解析器

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。各种语言可以按照DOM规范给出解析XML文件的解析器。Sun公司发布的JDK1.4的后续版本中提供了解析XML文件的网API(Java API for XML Processing)。关于XML语法请参考这里。为什么没有对java类和实际对象没做详细说明,我已经到代码中写了注释了,到这里就不做过多的说明了。检测命名空间:TestNameSpace.javaimport java.

2021-01-19 16:40:15 309

原创 2021金三银四Java面试突击集锦

文章目录一、面向对象编程(OOP)1. 封装2. 多态3. 继承4. 抽象5. 抽象和封装的不同点二、常见的Java问题1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?2.JDK和JRE的区别是什么?3.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?4.是否可以在static环境中访问非static变量?5.Java支持的数据类型有哪些?什么是自动拆装箱?6.Java中的方法覆盖(Overriding)和方法重

2021-01-18 16:36:17 815

原创 基础不牢地动山摇,你必须知道的java虚拟机之运行时数据区域

文章目录一、本章提要二、程序计数器三、Java虚拟机栈局部变量表四、本地方法栈五、Java堆六、方法区运行时常量池七、直接内存八、总结一下九、写到最后首先阐述一下写这个系列的目的,主要是受到一些启发,发现很多同学在平常工作过程中是为了编码而编码,一到跳槽季就急急忙忙的地进行亡羊补牢式的恶补,可能在短期来看,应试型的学习方式能获得较为不错的成效。但是随着工作年龄的增长这种学习方式就会漏洞百出,最常见的就是知其然不知其所以然,没有形成一个完整的知识体系,导致很多内容无法连贯起来,渐渐的就感受到了所谓的技术瓶颈

2021-01-15 16:04:08 144

原创 论offer拿到手软是一种什么样的体验?精选BAT校招87道java面试题

Java核心技术部分的面试题,可能覆盖Java基本语法、面向对象(包括类定义、方法、构造器、递归、继承、抽象类、接口、枚举以及final、static等关键字)、Java常用API、Java集合框架(需要重点掌握)、注解(Annotation)、泛型、输入/输出、多线程、网络通信、反射、内存管理等相关内容。一、面试精选题1、面向对象的特征有哪些?2、Java中实现多态的机制是什么?3、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?4、String是基本数据类型吗?5.

2021-01-14 16:46:45 118

原创 盘点全网最全的前端基础之CSS

文章目录一、CSS介绍二、CSS语法1. CSS实例2. CSS注释三、CSS的几种引入方式1. 行内样式2. 内部样式3. 外部样式四、CSS选择器1. 基本选择器元素选择器ID选择器类选择器通用选择器2. 组合选择器后代选择器儿子选择器毗邻选择器弟弟选择器3. 属性选择器4. 分组和嵌套分组嵌套5. 伪类选择器6. 伪元素选择器first-letterbeforeafter7. 选择器的优先级CSS继承选择器的优先级五、CSS属性相关1. 宽和高2. 字体属性文字字体字体大小字重(粗细)文本颜色3. 文

2021-01-13 15:49:57 106

原创 教你如何用最短的时间实现Java的异步调用

一、创建线程 @Testpublic void test0() throws Exception { System.out.println("main函数开始执行"); Thread thread=new Thread(new Runnable() { @Override public void run() { System.out.println("===task start==="); try { Thread.sleep(5000);

2021-01-12 16:05:39 211

原创 学习Java之前需要准备些什么?

一、认识 java1. java分为三类JavaSE 基础核心JaveEE web方向(企业版)JavaME 移动、游戏…(嵌入式开发)2. 概念JVM java虚拟机 JVM就包含了解释器(interpreter)整个java程序的执行过程如下JDK (java Development kit) java开发工具包JRE (java runtime Enviroment) java运行环境二、环境变量的配置JAVA_HOME C:\Program F

2021-01-09 16:57:05 323

原创 史上最全Java知识点总结归纳,赶紧收藏吧!

文章目录一、流二、异常三、注解四、安全性五、类加载1. 原理2. 加载器六、关键字七、初始化八、多线程1. 线程池2. 线程安全九、内存模型内存组成十、写到最后一、流Java所有的流类位于http://java.io包中,都分别继承字以下四种抽象流类型。继承自InputStream/OutputStream的流都是用于向程序中输入/输出数据,且数据的单位都是字节(byte=8bit)。继承自Reader/Writer的流都是用于向程序中输入/输出数据,且数据的单位都是字符(2byte=16bi

2021-01-08 16:20:44 2309

原创 我觉得用java爬虫也不比phython差吧?

文章目录1. 网络爬虫基本技术处理2. 网络爬虫的整体执行流程:Ⅰ在进行网页爬虫前,我们先针对一个飞机事故失事的文档进行数据提取的练习,主要是温习一下上一篇的java知识,也是为了下面爬虫实现作一个热身准备。Ⅱ接下来我们就可以在网页的数据上下手了。3. 通过正则表达式完成超连接的连接匹配和提取4. 广度优先遍历5. 多线程爬虫实现6. 控制台显示:7. 本地目录显示:8. 总结:9. 写到最后这一篇目的就是在于网络爬虫的实现,对数据的获取,以便分析。1. 网络爬虫基本技术处理网络爬虫是数据采集的一种方

2021-01-07 16:11:26 195 2

原创 史上最强Java面试宝典,HR看了直呼内行【硬核干货,建议收藏】

这是我觉得作为一个想走Java开发的应届毕业生面试前应该要准备好的大框架,为什么?下面就听我细细道来~一、社会知识既然都要工作了,那必然身份就转变了,怎么说咱也是从读书人变成了社会人了,那作为一个合格的社会人那社会套路必然是要了解一些的~1. 自我介绍又很多朋友觉得自我介绍属实是多此一举,内心os:煞笔hr我不是都给你简历了嘛干嘛还要自我介绍,然后非常犀利又自信的来了一句:“面试官你好,我叫×××其余的信息简历上都有哈~我就不再这里一一赘述了。。。”这吊炸天的语气…咳咳,hr听了都直呼初生牛.

2021-01-06 16:44:54 711

原创 2021Java校招笔试题答案及评分标准

文章目录满分100分 时间1小时一、简答题:1. (5分)写出你用过的linux命令,举例说明其中几个的具体用法。2. **(5分)写出TCP的三次握手和四次握手的过程。**3. (10分)编写程序将一个句子按单词反序。比如“the sky is blue”,反序后变为“blue is sky the”?(Java)4. (10分)一张学生成绩表score,部分内容如下:5.(10分)接口和抽象类的区别是什么?6. (15分)集合类用过哪些,分别列举出来,并指出它们各自使用了那些数据结构。7. (15分)S

2021-01-05 16:47:07 2014

原创 看完这篇文章,你还怕搞不明白Java中的多线程?

文章目录一、引二、扎好马步:线程的状态三、内功心法:每个对象都有的方法(机制)四、太祖长拳:基本线程类1. Runnable2. Callable五、九阴真经:高级多线程控制类1.ThreadLocal类2.原子类(AtomicInteger、AtomicBoolean……)3.Lock类4.容器类5.管理类六、总结一、引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来

2021-01-04 16:17:35 125

原创 盘点2021最新Java面试题及最全面试经验分享

今年毕业,去年秋招的时候投了无数份简历,面试了至少二十家公司现在终于已经成为了一家互联网公司专写bug的Java程序员,总结了这些企业招聘Java实习生时喜欢提的一些问题~一、自我介绍首先是自我介绍,大家应该都有做过功课应该怎么做自我介绍,我自己感觉就是在自己能力范围内吹牛,其实很多公司不会真正去背调你在大学到底做了些什么的(一些比较有含金量的证书没得到还是别吹了哈,入职会要复印件的),所以千万不要怯场,只要你准备得足够充分,那offer就逃不掉的~不要怕很多技术自己根本掌握得不好只是恰好背了这个面试题

2020-12-31 16:33:44 1096 4

原创 大厂面试官夺命连环问,这谁顶得住?

文章目录一、说一说 JVM 运行时数据区?1. 程序计数器2. Java 虚拟机栈3. 本地方法栈4. Java 堆5. 方法区二、GC 收集器有哪些?三、如何判断 Java 对象已经被回收?四、垃圾回收算法有哪些?1. 标记-清除(Mark-Sweep)2. 复制(Copying)3. 标记-整理(Mark-Compact)五、写到最后近几年,无论是使用规模、开发者人数,还是技术生态成熟度、相关工具的丰富程度,Java 都在后端开发语言中有着不可撼动的地位,也是开发各类业务系统的首选语言。但很多同学却

2020-12-30 17:33:43 156

原创 java中构造方法和构造函数难道不是同一个东西吗?

文章目录一、重载构造方法二、默认构造方法三、子类调用父类的构造方法四、构造方法的作用域五、构造方法的访问级别(1)在这个类中仅仅包含了一些供其他程序调用的静态方法,没有任何实例方法。(2)禁止这个类被继承。(3)这个类需要把构造自身实例的细节封装起来,不允许其他程序通过new语句创建这个类的实例,这个类向其他程序提供了获得自身实例的静态方法,这种方法称为静态工厂方法。六、总结重载构造方法 、默认构造方法、子类调用父类的构造方法、构造方法的作用域、构造方法的访问级别在多数情况下,初始化一个对象的最终步骤

2020-12-29 16:35:59 1038

原创 面试官:别给我扯什么死锁高并发,你先把Java多线程的基础知识点讲明白

本文介绍了Java多线程的基本概念,使用方法,以及底层实现原理。帮助你更好地使用Java的多线程。一、Java中的线程Java之父对线程的定义是:线程是一个独立执行的调用序列,同一个进程的线程在同一时刻共享一些系统资源(比如文件句柄等)也能访问同一个进程所创建的对象资源(内存资源)。java.lang.Thread对象负责统计和控制这种行为。每个程序都至少拥有一个线程-即作为Java虚拟机(JVM)启动参数运行在主类main方法的线程。在Java虚拟机初始化过程中也可能启动其他的后台线程。这种线程

2020-12-28 17:29:31 115

原创 你绝对不知道的Java面试必考点之网络编程

一、本文思维导图本人另外整理了我从零开始自学Java学习路线、学习资料及近五年大厂的面试真题大全,如果需要的话自行领取下载:腾讯文档二、简介Java作为一门后端语言,对于网络编程的支持是必不可少的,但是,作为一个经常CRUD的Java工程师,很多时候都不需要接触到网络编程,自然而然地对这个东西不那么重视了,毕竟,即使像是JVM虚拟机,Java多线程,在平时工作的时候还会用到一些,但是对于网络编程,除非你做的东西确实是需要自己写通讯服务代码的,比如网络游戏,以及偏向中间件方向的开发, 可能会接触到

2020-12-26 17:34:26 284

原创 我当年要是这样学Java,得少走多少弯路啊!

文章目录一、本文思维导图二、简介三、为什么要学Java四、如何学习Java基础1. 第一次接触2. 学完了Java课,我能出师了吧?五、研究生阶段:推翻重来六、实践阶段七、如果重新开始,我会这样学Java八、总结一、本文思维导图二、简介在这个三百六十行,行行转互联网的后互联网时代,Java作为一门深受培训班、企业以及开发者喜爱的语言,仍然非常火爆,虽然比不上之前几年的风光,但是依旧有一大批的追随者和学习者涌入。不妨先来看看Java语言时如何被定义的。根据百度百科的介绍,Java是一门面向对象编

2020-12-25 17:35:49 222

原创 Java中的强引用、软引用、弱引用、虚引用,你知道几个?

文章目录一、背景二、预备知识1. Young GC示例解释2. 解释3. Full GC示例解释4. 解释三、强引用四、软引用五、弱引用六、虚引用七、在Guava中使用强软弱引用七、总结一、背景工程中用到guava的本地缓存。它底层实现和API接口上使用了强引用、软引用、弱引用。所以温故知新下,也夯实下基础。二、预备知识先来看下GC日志每个字段的含义1. Young GC示例解释[GC (Allocation Failure) [PSYoungGen: 273405K->20968K(27

2020-12-24 17:12:22 186 1

原创 好家伙,这才是Java 类隔离加载的正确打开方式!

文章目录一、什么是类隔离技术二、如何实现类隔离1. 重写 findClass2. 重写 loadClass三、总结一、什么是类隔离技术只要你 Java 代码写的足够多,就一定出现这种情况:系统新引入了一个中间件的 jar 包,编译的时候一切正常,一运行就报错:java.lang.NoSuchMethodError,然后就哼哧哼哧的开始谷歌找解决方法,最后在几百个依赖包里面找的眼睛都快瞎了才找到冲突的 jar,把问题解决之后就开始吐槽中间件为啥搞那么多不同版本的 jar,写代码五分钟,排包排了一整天。上

2020-12-23 17:41:21 202

原创 Java线程池到底是什么!

文章目录一、线程池实现原理二、线程的状态三、线程池操作四、合理配置线程池五、ScheduledThreadPoolExecutor六、总结在开发过程中,合理地使用线程池能够带来至少以下几个好处。降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度:当任务到达时,任务可以不需要等到线程创建就能立即执行。提高线程的可管理性:线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一分配、调优和监控。但是,要做到合理利用线程池

2020-12-21 17:45:06 121

原创 程序员的灵魂拷问:我到底是在面向什么编程?

文章目录一、面向什么?二、思考的起源三、面向对象1.面向类?2.封装3.继承4.多态四、面向接口五、总结一、面向什么?面向什么,这是很多初学者甚至编程几年的人不曾思考过的问题。面向什么是一个思想,我们面向什么,意味着我们碰到了问题,我们的解决方案是往哪里去思考。记得之前有个笑话:面向对象编程面向流程编程面向工资编程笑笑就可以,其实编这个笑话的人真正地理解了面向什么?面向对象编程,我解决问题就是我需要几个各有什么功能的对象,然后这几个对象之间如何协作最后实现用户的需求。面向流程编程,先画

2020-12-20 17:44:00 185

原创 看了这篇文章,你想不懂Java 线程基础都难!

线程作为操作系统中最少调度单位,在当前系统的运行环境中,一般都拥有多核处理器,为了更好的充分利用 CPU,掌握其正确使用方式,能更高效的使程序运行。同时,在 Java 面试中,也是极其重要的一个模块。线程简介一个独立运行的程序是一个进程,一个进程中可以包含一个或多个线程,每个线程都有属于自己的一些属性,如堆栈,计数器等等。同时,一个线程在一个时间点上只能运行在一个 CPU 处理器核心上,不同线程之间也可以访问共享变量。线程在运行时,系统给每个线程分配一些 CPU 时间片,CPU 在时间片这段时间运行.

2020-12-11 17:24:30 89

原创 Java 面试必问的几大 IO 模型,你知道几个?

问题:不管你平时是否接触大量的 IO 网络编程,IO 模型都是高级 Java 工程师面试非常高频的一道题。你了解 Java 的 IO 模型吗?多路复用技术是什么?答案:在了解 Java IO 模型之前,我们先来明确几个概念,初学者通常会被如下几个概念给误导:同步和异步同步指的是当程序在做一个任务的时候,必须做完当前任务才能继续做下一个任务,这是一种可靠有序的运行机制,假设当前任务执行失败了,可能就不会进行下一个任务了,往往在一些有依赖性的任务之间,我们使用同步机制。..

2020-12-10 17:23:28 197

空空如也

空空如也

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

TA关注的人

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