简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
源代码通过编译器编译为字节码,再通过类加载子系统进行加载到JVM中运行。多语言编译为字节码在JVM运行计算机是不能直接运行java代码的,必须要先运行java虚拟机,再由java虚拟机运行编译后的java代码。这个编译后的java代码,就是本文要介绍的java字节码。为什么jvm不能直接运行java代码呢,这是因为在cpu层面看来计算机中所有的操作都是一个个指令的运行汇集而成的,java是高级语言
A.首先了解下1和2在Linux中代表什么在Linux系统中0 1 2是一个文件描述符上面表格引用自这里从上表看的出来,我们平时使用的echo "hello" > t.log其实也可以写成echo "hello" 1> t.logB.关于2>&1的含义(关于输入/输出重定向本文就不细说了,不懂的可以参考这里,主要是要了解> < << >>
JDK版本JDK 1.8.0_110参考Java LinkedList源码剖析 结合源码对LinkedList进行讲解 http://www.cnblogs.com/CarpenterLee/p/5457150.html概述LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,L
知识体系结构介绍容器,就是可以容纳其他Java对象的对象。*Java Collections Framework(JCF)*为Java开发者提供了通用的容器,其始于JDK 1.2,优点是:降低编程难度提高程序性能提高 API 间的互操作性降低学习难度降低设计和实现相关 API 的难度增加程序的重用性Java容器里只能放对象,对于基本类型(int, long, float, double等),需要将
前言对于微服务而言配置本地化是个很大的鸡肋,不可能每次需要改个配置都要重新把服务重新启动一遍,因此最终的解决方案都是将配置外部化,托管在一个平台上达到不用重启服务即可一次修改多处生效的目的。但是对于单体应用的Spring Boot项目而言,动态刷新显然是有点多余,反正就一个服务,改下重启不就行了?然而在某些特殊的场景下还是必须用到动态刷新的,如下:添加数据源:对接某个第三方平台的时候,你不可能每次
面试官经常喜欢问Spring中的bean是不是线程安全的这个问题用来考察对Spring 中Bean作用域的理解,先说结论,Spring中的Bean不是线程安全的。Spring容器中的Bean是否线程安全,容器本身并没有提供Bean的线程安全策略,因此可以说Spring容器中的Bean本身不具备线程安全的特性,但是具体还是要结合具体scope的Bean去研究。Spring Bean作用域Spring
1、什么是微服务1.1、架构演进架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。图1:架构演进单体架构:未做任何拆分的Java Web程序图2:单体架构示意图分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。图3:分布式架构示意图SOA架构:SOA(Service-Oriented Architecture)是一种面向服务的架构。其应用程序的不同组件
JDK版本JDK 1.8.0_110参考深入Java集合学习系列: ArrayList的实现原理 http://zhangshixi.iteye.com/blog/674856Java ArrayList源码剖析 结合源码对ArrayList进行讲解 http://www.cnblogs.com/CarpenterLee/p/5419880.html概述ArrayList实现了List接口,是顺序
不啰嗦,我们直接开始!引导语线程池我们在工作中经常会用到。在请求量大时,使用线程池,可以充分利用机器资源,增加请求的处理速度,本章节我们就和大家一起来学习线程池。本章的基础是第四章队列和第五章线程,没有看过这两章的同学可以先看一看。本章的顺序,先说源码,弄懂原理,接着看一看面试题,最后看看实际工作中是如何运用线程池的。1、整体架构图我们画了线程池的整体图,如下:本小节主要就按照这个图来进行 Thr
Vue 结合了 React 和 Angular 的优点,并且有着团结、活跃且庞大的社区,可以帮助解决开发中遇到的问题。开源社区不断提出解决问题的新方法。工具和库的数量也贡献量不断的增加。使用 Vue 的好处该框架非常小。约为18–21KB;Vue 支持用基于组件的方法来构建 Web 应用;详细的文档。这对于初学者来说很容易上手;易于理解。由于其结构简单,你可以轻松地把 Vue.js 添加到自己的