E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
《深入理解Java
深入理解Java
Script系列(4):立即调用的函数表达式
前言大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行。在详细了解这个之前,我们来谈了解一下“自执行”这个叫法,本文对这个功能的叫法也不一定完全对,主要是看个人如何理解,因为有的人说立即调用,有的人说自动执行,所以你完全可以按照你自己的理解来取一个名字,不过我听很多人都叫它为“自执行”,但作者后面说了很多,来说服大家称呼为“立即调用的函数表达式”。本文
weixin_33763244
·
2020-07-05 22:05
深入理解Java
线程池:ThreadPoolExecutor
线程池介绍在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理。如果每次请求都新创建一个线程的话实现起来非常简便,但是存在一个问题:如果并发的请求数量非常多,但每个线程执行的时间很短,这样就会频繁的创建和销毁线程,如此一来会大大降低系统的效率。可能出现服务器在为每个请求创建新线程和销毁线程上花费的时间和消耗的系统资源要比处理实际的用户请求的时间和资源更多。那么有没有一
weixin_30871701
·
2020-07-05 22:23
深入理解Java
虚拟机---学习感悟以及笔记
一、为什么要学习Java虚拟机?这里我们使用举例来说明为什么要学习Java虚拟机,其实这个问题就和为什么要学习数据结构和算法是一个道理,工欲善其事,必先利其器。曾经的我经常害怕处理内存溢出的问题,因为不知道他为什么会出现这个问题,当我在看了这本书以后明白了垃圾回收算法,以及JVM是如何帮助我们处理GC的,这个时候当出现这个问题的时候我就明白需要查找GCRoot,或者查看GC日志,去查找这个问题的根
weixin_30827565
·
2020-07-05 22:22
[转]
深入理解java
虚拟机 精华总结(面试)
原文http://www.cnblogs.com/prayers/p/5515245.html一、运行时数据区域31.1程序计数器31.2Java虚拟机栈31.3本地方法栈31.4Java堆31.5方法区31.6运行时常量池4二、hotspot虚拟机对象42.1对象的创建41.检查42.分配内存43.Init42.2对象的内存布局42.3对象的访问定位41.使用句柄访问42.使用直接指针访问5三、
メイ
·
2020-07-05 22:50
深入理解java
script中的立即调用的函数表达式(IIFE)
在弄清楚什么是立即调用的函数表达式(IIFE)之前,我们先了解一些函数的基本概念。函数声明、函数表达式、匿名函数函数声明:functionfunctionName(){...};使用function关键字声明一个函数,再指定一个函数名,叫函数声明。函数声明后不会立即执行,会在我们需要的时候调用到。函数表达式:vartest=function(){…};使用function关键字声明一个函数,但未给
weixin_30568591
·
2020-07-05 21:54
Java内存区域之程序计数器--《
深入理解Java
虚拟机》学习笔记及个人理解(一)
Java虚拟机程序计数器在书上的P39页程序计数器干嘛的?有了它,字节码解释器才可以知道下一条要执行的字节码指令是哪个。无论是取下一条指令还是分支、循环、跳转、中断、线程恢复,都需要这个程序计数器。程序计数器存在哪?虚拟机区别于硬件,组成原理里学的程序计数器是用CS和IP寄存器来存,来表示指令地址。而Java把程序计数器存在内存里。我好像在操作系统中也听说过程序计数器?是跟操作系统中的程序计数器有
weixin_30335575
·
2020-07-05 20:04
【
深入理解Java
原理】垃圾回收原理
内存模型相关什么时候触发GC?本文章完整内容发表在公众号:程序员开发者社区,关注后免费看内存模型相关参考:点击打开链接CMS垃圾回收器ConcurentMarkedSweep并行的标记垃圾回收器获取最短停顿的回收器,标记清除算法实现缺点是:1.对cpu资源敏感2.无法处理浮动垃圾3.有大量碎片产生六个步骤流程如下:1.初始标记初始标记会触发stoptheworld,从垃圾回收的根对象开始查找,这个
wangxiaoming
·
2020-07-05 19:41
深入理解
JVM
原理
线程安全与锁优化
摘自《
深入理解Java
虚拟机:JVM高级特性与最佳实践》(第二版)并发处理的广泛应用是使得Amdahl定律代替摩尔定律成为计算机性能发展源动力的根本原因,也是人类“压榨”计算机运算能力的最有力武器。
wiljm
·
2020-07-05 18:19
《深入理解
Java
虚拟机》
《
深入理解JAVA
虚拟机》学习笔记(一)JAVA内存划分
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。根据《Java虚拟机规范(JavaSE7版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时数据区域1、程序计数器线程私有,当前线程所执行的字节码的行号指示器,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,功能相当于机器的pc取址寄存器2、JAVA虚拟机栈线程私有,虚拟机
郭大侠写leetcode
·
2020-07-05 18:32
JAVA虚拟机
Java虚拟机--Java虚拟机栈
文章引用:1《
深入理解Java
虚拟机》2https://www.cnblogs.com/niejunlei/p/5987611.html3https://blog.csdn.net/ZhongGuoZhiChuang
可乐丶
·
2020-07-05 18:59
JAVA相关技术
深入理解JVM之Java内存区域与内存溢出异常
读了《
深入理解Java
虚拟机-JVM高级特性与最佳实践》的第二章,明白了在虚拟机中内存是如何划分的,哪部分区域、什么样的代码和操作可能导致内存溢出异常。
不贰过先生
·
2020-07-05 17:18
深入理解Java虚拟机
JVM基础知识
根据《
深入理解Java
虚拟机》可知,运行时数据区通常包括这几个部分:程序计数器(ProgramCounterRegister)、Java栈(VMStack)、本地方法栈(NativeMethodStack
禾夕
·
2020-07-05 17:47
学习笔记整理
深入理解Java
Script系列(三): 作用域链与闭包
1.作用域链1.创建时函数的[[Scope]]属性包含这个函数被定义时它所有的域对象。varname='scope1';functiontellScope(){console.log(name);//[[Scope]]=[{name:'scope1'}]}functiontestScope(){varname='scope2';tellScope();}testScope();//scope12)
沈鸿斌
·
2020-07-05 17:30
前端
《
深入理解java
虚拟机》学习笔记之虚拟机即时编译详解
郑重声明:本片博客是学习一书所记录的笔记,内容基本为书中知识.Java程序最初是通过解释器(Interpreter)进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码”,为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器,即时编译器编译性能的好坏、代码优化程度的高
伯努力不努力
·
2020-07-05 16:45
java
java中堆和栈的概念解析
本人看的概念来自于《
深入理解Java
虚拟机》这本书,这本书可谓是讲解JVM原理的一本圣经。首先,jav
易灬小侠
·
2020-07-05 15:06
Java
深入理解Java
虚拟机(类文件结构)
直到后来细读了《
深入理解Java
虚拟机》中虚拟机执行子系统的相关内容,才建立了清晰的认知。如果你也和我一样,不了解类结构和类加载,但是工作中又涉及到字节码相关内容,相信后面两篇文章会对你有
菜鸟飞不动
·
2020-07-05 15:59
产生OutOfMemoryError异常的原因
最近在看周志明的《
深入理解Java
虚拟机》,觉得还是一本不错的书。
无心人偶
·
2020-07-05 12:15
JVM
java
深入理解Java
Script MVC 框架
Model–View–Controller(MVC)是一种把信息展现逻辑和用户交互分离的计算机用户界面开发模式;Model包含应用的数据和业务逻辑;Controller负责把用户的输入,转换为命令传递给Model和View;这是维基百科的解释;这种模式最初是由TrygveReenskaug在使用Smalltalk-80(1979)工作时设计的,刚开始叫做Model-View-Controller-
slalx
·
2020-07-05 12:28
前端开发
前端架构
JVM 内存模型笔记
最近在看《
深入理解Java
虚拟机》,准备边看书、边结合一些收集的资料以及自己在工作中的实践写一系列学习和总结的笔记,本篇文章为该系列的第一篇文章。
GeorgeDon
·
2020-07-05 12:21
通过Java字节码
深入理解Java
执行过程及JVM底层结构
在读本文时,可以参考我的另外两篇介绍jvm的博客。JVM底层结构Java堆内存介绍及简单性能调优生成一个字节码文件首先我们编写一个简单的Java文件在文件夹中找到这个文件,可以看到只有一个.java文件在命令行使用Javac命令,生成.class文件使用Javap-c命令,生成字节码文件看到这个乱七八糟的代码,你可能会问,,这tm是什么鬼。下面通过JVM指令手册从Java底层对字节码进行分析字节码
drz_cs_dn
·
2020-07-05 10:12
Jvm
Java 语法糖(五): 成员内部类
参考文献https://mp.weixin.qq.com/s/xl1ibkfUc00NY8HCa_fcPg(
深入理解Java
内部类)https://www.benf.org/other/cfr/inner-class-fake-friends.htmlhttps
jyjz2008
·
2020-07-05 10:24
深入理解Java
虚拟机(三)之详拆运行时数据区的各个结构----本地方法栈
本地方法栈本地方法栈的特点为什么要使用本地方法?本地方法栈的特点我们观察JVM运行时数据域发现java有两个栈,一个本地方法栈,一个Java虚拟机栈。Java虚拟机栈用于管理Java方法的调用,本地方法栈用于管理本地方法(底层用c/c++等非Java语言写的)线程私有允许被实现成固定大小或者可动态扩展内存如果线程请求分配的栈容量超过本地方法栈允许的最大容量,Java虚拟机就会抛出StackOver
是鹿鸣啊
·
2020-07-05 08:13
JVM
JVM自动内存管理机制
本文是基于周志明的《
深入理解Java
虚拟机》对从事C和C++的程序员来说,在内存管理方面,他们既是拥有最高权利的人,也是从事最基础工作的“劳动人民”。
qq_35661171
·
2020-07-05 05:08
JVM
JVM
深入理解java
编译后的字节码文件
也许你写了无数行的代码,也许你能非常溜的使用高级语言,但是你未必了解那些高级语言的执行过程。例如大行其道的Java。Java号称是一门“一次编译到处运行”的语言,但是我们对这句话的理解深度又有多少呢?从我们写的java文件到通过编译器编译成java字节码文件(也就是.class文件),这个过程是java编译过程;而我们的java虚拟机执行的就是字节码文件。不论该字节码文件来自何方,由哪种编译器编译
战血石LoveYY
·
2020-07-05 05:34
Java
战血石LoveYY的专栏
JVM内存区域解析
JVM内存区域基本结构图:《
深入理解Java
虚拟机(第二版)》中的描述是下面这个样子的:1、程序计数器:程序计数器(ProgramCounterRegister)是当前线程执行的字节码的行号指示器,存放该字节码指令的位置
zml400
·
2020-07-05 05:36
JVM
2.2 堆在整个jvm内存中的运行流程以及jvisualvm工具的使用
一.堆和GC介绍java堆的特点《
深入理解java
虚拟机》是怎么描述java堆的Java堆(JavaHeap)是java虚拟机所管理的内存中最大的一块java堆被所有线程共享的一块内存区域虚拟机启动时创建
盛开的太阳
·
2020-07-05 05:00
【
深入理解Java
虚拟机】方法调用之静态分派与动态分派
静态分派与动态分派方法调用并不等同于方法执行,方法调用的唯一任务就是确定被调用方法的版本(即调用哪个版本),暂时不涉及方法内部的具体运行过程。因为Class文件的编译过程,一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行内存中的入库地址(直接引用),这个特点使得java更具有动态扩展能力。1.解析解析就是所有调用方法在Class文中都是常量池里的一个符号引用,在类加载解析
方友运
·
2020-07-05 03:37
java虚拟机
jvm的java虚拟机栈探秘
注:资料来源《
深入理解Java
虚拟机-jvm的高级特性与最佳实践》--周志明著下面重点介绍虚拟机栈VMStack:虚拟机栈描述的Java方法执行的内存模型:每个方法在执行的同
Liu_Kuny
·
2020-07-05 00:14
jvm
深入理解Java
内存模型的语义
image前言Java内存模型(JMM)给我们介绍了在当代不同的硬件架构情况下,多线程程序需要关注什么问题以及如何利用JMM来正确的处理这些问题。多线程带来的问题多线程程序主要关注两个问题:(1)共享变量可见性问题(2)代码重排序一致性问题Java内存模型的关键点JMM已经保证了as-if-serial原则,也就是Java的程序在单线程情况下,不管JIT做不做重排序,也不管代码指令在几个CPU上执
三劫散仙
·
2020-07-05 00:47
javascript设计模式读书笔记一单例模式
主要用的还是闭包的知识,以及重写构造函数,构造函数中返回值类型和引用类型的区别代码来自汤姆大叔的博客(
深入理解Java
Script系列(25):设计模式之单例模式),阅读过程中我自己加上了一些注释1.包含私有成员和方法
若邪Y
·
2020-07-04 23:19
深入理解java
反射------通过配置文件运行类中的方法
这个小案例帮助了我更深刻的理解了反射,也让我对后面框架原理有了一些新的认识,因此记录再次,希望能让更多的人看到,当然,大佬就直接跳过就好。实体类:Student.javapublicclassStudent{publicvoidlove(){System.out.println("爱生活,爱Java");}}Teacher.javapublicclassTeacher{publicvoidlove
loli_kong
·
2020-07-04 22:05
java
Java虚拟机学习资料整理
深入理解java
虚拟机第二版文字版本-带目录.PDF--下载地址链接:https://pan.baidu.com/s/1gNEo1gn4iyl48UkPpmaRyA提取码:emg6
深入理解java
虚拟机第二版极简版
lj淡然一笑
·
2020-07-04 22:44
Java
《
深入理解Java
虚拟机》读书笔记7——线程安全与锁优化
BrianGoetz对线程安全的定义:当多个线程访问一个对象时,如果不考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调度方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程安全的。1.Java语言中的线程安全按照线程安全的“安全程度”由强至弱来排序,java里面各种操作共享的数据分为以下5类:不可变,绝对线程安全,相对线程安全,线程兼容,
零下九度
·
2020-07-04 21:10
读书笔记
Java虚拟机
深入理解Java
虚拟机笔记---运行时栈帧结构
栈帧(StackFrame)是用于支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区的虚拟机栈(VirtualMachineStack)的栈元素。栈帧存储了方法的局部变量表,操作数栈,动态连接和方法返回地址等信息。第一个方法从调用开始到执行完成,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。每一个栈帧都包括了局部变量表,操作数栈,动态连接,方法返回地址和一些额外的附加信息。在编译
再见理想1992
·
2020-07-04 21:07
Java基础
JVM 程序计数器
--摘自《
深入理解Java
虚拟机》特点如果线程正在执行的是Java方法,则这个计数器记录的是正在执行的虚拟机字节码指令地址如果正在执行的是Na
猕猴桃0303
·
2020-07-04 21:08
java-虚拟机
理解Java虚拟机(1)之一个.java文件编译成.class文件发生了什么
理解Java虚拟机(1)之一个.java文件编译成.class文件发生了什么最近在看《
深入理解Java
虚拟机》弄明白了很多java的底层知识,决定分几部分总结下,从.java文件编译,到类加载机制,内存分配垃圾回收机制
hucheng91
·
2020-07-04 20:43
解密线程安全问题
线程基础->->
深入理解java
多线程1.多线程操作同一数据*多线程并发操作同一数据时,就有可能出现线程安全问题*使用同步技术可以解决这种问题,把操作数据的代码进行同步,不要多个线程一起操作例子:火车站卖票问题
Junieson
·
2020-07-04 18:29
Java
JVM类加载机制小结
经常写Java程序的小伙伴应该都听说过类加载机制,在《
深入理解Java
虚拟机》里周老师已经讲的很清楚了,这篇随笔把之前的笔记以及一些总结重新梳理一下。
今天你做题了吗
·
2020-07-04 17:00
QUnit源码大致结构分析
在这里我重点推荐汤姆大叔的译作《
深入理解Java
Script系列》。文章很多共有50
青松
·
2020-07-04 17:24
JavaScript
JavaScript
测试
从头开始学习JVM(六)—— 垃圾收集器
本系列内容根据自己的学习和理解的基础上,并参考《
深入理解Java
虚拟机》一书介绍的知识所写。如果有写的不对的地方,请各位多多提点。从头开始学习JVM(六)——垃圾收集器垃圾收集器Serial收集
尼尧Nier
·
2020-07-04 17:01
JVM与计算机基础
《
深入理解Java
虚拟机》第一章 走进Java,第二章 Java内存区域与内存溢出异常,第三章 垃圾收集器与内存分配策略
本系列是用来记录《
深入理解Java
虚拟机》这本书的读书笔记。方便自己查看,也方便大家查阅。欲速则不达,欲达则欲速!第一章走进Java一、Java虚拟机发展史这部分一带而过吧,有兴趣的可以阅读原著!
素小暖
·
2020-07-04 16:28
#
深入理解Java虚拟机
深入理解Java
浮点数机制【详析】
什么是浮点数浮点数是在计算机中用以近似的表示任意的某个实数。具体的说,这个实数由一个整数或定点数(即尾数),乘以某个基数(计算机中通常为2)的整数次幂得到的,这种表示方法类似于基数为10的科学记数法。为什么要用浮点数在看到本文之前,想必大家对整型数据类型已经有了一定的了解。然而在实际生活中,又或者程序编写中,不可避免的需要使用到小数。那么,在计算机小数究竟是怎样存储和运算的呢?科班出身的同学对这个
少年我手写红黑树
·
2020-07-04 07:44
JAVA
深入理解java
虚拟机(五):hotspot垃圾收集算法实现
深入理解java
虚拟机(一):java内存区域(内存结构划分)
深入理解java
虚拟机(二):java内存溢出实战
深入理解java
虚拟机(三):String.intern()-字符串常量池
深入理解java
chaofanwei
·
2020-07-04 06:43
java
虚拟机
深入理解java虚拟机
java
虚拟机
垃圾收集
算法
深入理解java
虚拟机(一):java内存区域(内存结构划分)
深入理解java
虚拟机(一):java内存区域(内存结构划分)
深入理解java
虚拟机(二):java内存溢出实战
深入理解java
虚拟机(三):String.intern()-字符串常量池
深入理解java
chaofanwei
·
2020-07-04 06:43
java
虚拟机
深入理解java虚拟机
深入理解Java
虚拟机之虚拟机栈
目录出现背景内存中的栈和堆Java虚拟机栈是什么?生命周期栈运行原理栈帧的内部结构作用开发过程中,关于虚拟机栈可能的异常?基于以上基础知识,尝试回答以下几个问题出现背景由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。内存中的栈和堆栈是运行时的单位,堆是存储
Juno99
·
2020-07-04 06:30
Java底层原理
jvm
java
编程语言
深入理解Java
虚拟机笔记---底层原理分析与性能优化
深入理解Java
虚拟机笔记---底层原理分析与性能优化文末彩蛋福利#概念虚拟机:指以软件的方式模拟具有完整硬件系统功能、运行在一个完全隔离环境中的完整计算机系统,是物理机的软件实现。
JavaWildcat
·
2020-07-04 06:15
java
Redis
并发编程
源码分析
Dubbo
IT
学习
JAVA工程师
分布式事务
面试
多线程
JVM
Mybatis
spring
cloud
单线程
面试题
Spring
IOC
分布式
程序员
框架
spring
boot
数据结构
netty
Mysql
Spring
jvm内存结构和内存模型
JVM内存结构《
深入理解Java
虚拟机(第2版)》中的描述是下面这个样子的:JVM的内存结构大概分为:堆(Heap):线程共享。所有的对象实例以及数组都要在堆上分配。回收器主要管理的对象。
HelloWorld_Joe
·
2020-07-04 05:21
java
深入理解Java
虚拟机读书笔记之垃圾收集器与内存分配策略
可达性分析算法Java虚拟机通过可达性分析算法来判断哪些对象已死可以回收,哪些对象还存活不可回收。可达性分析算法的实现原理:通过一系列的称为“GCRoots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链。当一个对象到GCRoots没有任何引用链相连接时,那么这个对象就死了,可以被回收。换句话说,当对象到GCRoots不可达时,该对象就可以被垃圾收集器回收。可作为GCRoot
木叶明
·
2020-07-04 05:06
JVM
深入理解Java
Script的执行环境、作用域与作用域链及闭包
执行环境(执行上下文EC)来自JS高设--执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个变量中。虽然我们编写的代码无法访问这个对象,但解析器在处理数据时会在后台使用它。每个函数都有自己的执行环境,当执行流进入一个函数时,函数的环境就会被推入一个环境栈中。而在函数执行后,栈将其环境弹出,把控制权返回给之
Eternal_tyq
·
2020-07-04 05:05
js/jquery
前端
原创 |
深入理解Java
内存模型(上)!
Java内存模型是学习Java虚拟机中必须要会的一个知识点,而且是重点,经常有人把Java内存模型和Java内存结构混为一谈。以后别乱点鸳鸯篇了,这俩货真的不是一个品种!今天我们就一起来看看到底Java内存模型是个啥,希望看完今天的文章,以后就不要再学Java内存模型,为啥不学了?因为已经会了啊!首先,还是希望大家分清楚几个概念:1.Java内存模型(今天的主角)2.Java内存结构3.Jvm内存
ithuangqing
·
2020-07-04 02:30
原创
Java虚拟机
上一页
46
47
48
49
50
51
52
53
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他