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
SE之final关键字(终结器)(面试重点)
final关键字含义final是java中保留的关键字,可以修饰类、方法、属性以及变量,一旦引用声明作final,那么我们将不能改变这个引用了,那么如果你尝试去改变的话,编译器会报错。final变量什么叫final变量?final变量就是用final修饰的变量,包括局部变量和本地变量,这里解释一下本地变量,本地变量就是在方法中定义的变量以及在代码块中的变量。final通常和static一起使用,作
L_R_
·
2020-07-14 02:08
JAVA
深入理解为什么Java中方法内定义的内部类可以访问方法中的局部变量
原文:http://blog.csdn.net/zhangjg_blog/article/details/19996629开篇在我的上一篇博客
深入理解Java
中为什么内部类可以访问外部类的成员中,通过使用
大饼卷馒头蘸米饭
·
2020-07-14 01:08
Java
java
深入理解Java
中的final关键字
在Java中声明类、变量和方法时,可使用关键字final来修饰,表示“最终的”。1、final用来修饰一个类:被修饰的类不能再被其他类继承。例如:String类、StringBuffer类、System类等2、final用来修饰方法:表明被修饰的方法不能再被子类重写。例如:Object类中的getClass()方法3、final用来修饰变量:此时的“变量”就是一个常量,名称大写,且只能被赋值一次。
有头发的代码匠
·
2020-07-14 00:04
Java
java
final
[转]
深入理解Java
的接口和抽象类
原文地址:http://www.cnblogs.com/dolphin0520/p/3811437.html
深入理解Java
的接口和抽象类对于面向对象编程来说,抽象是它的一大特征之一。
海涛zht666
·
2020-07-13 23:31
Java
EE
深入理解Java
内存模型
utm_source=infoq&utm_medium=related_content_link&utm_campaign=relatedContent_articles_clk
深入理解Java
内存模型
zgmzyr
·
2020-07-13 23:10
java
深入理解Java
Script - 闭包 (三)IIFE
前面的话严格来讲,IIFE并不是闭包,因为它并不满足函数成为闭包的三个条件。但一般地,人们认为IIFE就是闭包,毕竟闭包有多个定义,本文将详细介绍IIFE的实现和用途。实现函数跟随一对圆括号()表示函数调用://函数声明语句写法functiontest(){};test();//函数表达式写法vartest=function(){};test();但有时需要在定义函数之后,立即调用该函数。这种函数
一拳超神
·
2020-07-13 23:12
深入理解Java
Script
js是否万物皆对象:经常在国内的各大网站博客上看到一句话,叫做JS中万物皆对象,那是否真是如此?那么,我们先来捋一捋JS中的数据类型,JS中的数据类型有下面几种UndefinedNullBooleanNumberStringSymbol(ES6中新增)Object所以本质上真的都是Object?--NO1.数据类型在JS中我们把前面六种类型称为为基本数据类型,最后一种则是复杂数据类型,也就是对象类
ynd_sg
·
2020-07-13 23:24
javascript
学习整理
深入理解java
script原型和闭包(1)——万物皆对象
functionshow(x){console.log(typeofx);//undefinedconsole.log(typeof10);//numberconsole.log(typeof'abc');//stringconsole.log(typeoftrue);//booleanconsole.log(typeoffunction(){});//functionconsole.log(ty
xihexm
·
2020-07-13 22:40
学习记录
虚拟机字节码执行引擎
深入理解Java
虚拟机 总结
执行引擎是Java虚拟机最核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、硬件、指令集和操作系统层面上的,而虚拟机的执行引擎则是由自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行哪些不被硬件直接支持的指令集格式。在Java虚拟机规范中制定了虚拟机字节码执行引擎的概念模型,这个概念模型称为各种虚拟
好好学习Sun
·
2020-07-13 22:24
锁的优化(自旋锁、自适应自旋锁、锁消除、偏向锁、轻量级锁)
注:此篇博文大部分内容出自《
深入理解Java
虚拟机》,一部分是本人在看个篇博文的个人理解。关于不知道如何获取电子版的朋友,微信读书上有完整版本,希望能帮到在学习这方
Maycope
·
2020-07-13 20:28
锁的优化
Java OOM(2-3)
摘录自《
深入理解Java
虚拟机》第二版周志明以下内容都是我对书籍内容的个人理解,可能存在错误,若要深入学习,建议翻看原书籍除了程序计数器,其他区域都规定了OutOfMemoryError,现在逐个去尝试使其出错
kingdon.wang
·
2020-07-13 20:42
JVM
《
深入理解Java
虚拟机》(第三版)读书笔记(十):第十三章 线程安全与锁优化
《
深入理解Java
虚拟机》(第三版)读书笔记(十):第十三章线程安全与锁优化文章目录《
深入理解Java
虚拟机》(第三版)读书笔记(十):第十三章线程安全与锁优化线程安全Java语言中的线程安全线程安全的实现方法锁优化自旋锁与自适应自旋锁消除锁粗化轻量级锁偏向锁线程安全
NayelyAA
·
2020-07-13 19:42
深入理解Java
8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)
深入理解Java
8Lambda(语言篇——lambda,方法引用,目标类型和默认方法)
深入理解Java
8Lambda(类库篇——Streams
weixin_34399060
·
2020-07-13 19:57
深入理解Java
Script执行上下文和执行栈
前言如果你是一名JavaScript开发者,或者想要成为一名JavaScript开发者,那么你必须知道JavaScript程序内部的执行机制。执行上下文和执行栈是JavaScript中关键概念之一,是JavaScript难点之一。理解执行上下文和执行栈同样有助于理解其他的JavaScript概念如提升机制、作用域和闭包等。本文尽可能用通俗易懂的方式来介绍这些概念。想阅读更多优质文章请猛戳GitHu
AirZH??
·
2020-07-13 18:27
《深入理解 Java 内存模型》读书笔记
前提《
深入理解Java
内存模型》程晓明著,该书在以前看过一遍,现在学的东西越多,感觉那块越重要,于是又再细看一遍,于是便有了下面的读书笔记总结。全书页数虽不多,内容讲得挺深的。
weixin_34119545
·
2020-07-13 18:52
深入理解Java
中的volatile关键字
在再有人问你Java内存模型是什么,就把这篇文章发给他中我们曾经介绍过,Java语言为了解决并发编程中存在的原子性、可见性和有序性问题,提供了一系列和并发处理相关的关键字,比如synchronized、volatile、final、concurren包等。在前一篇文章中,我们也介绍了synchronized的用法及原理。本文,来分析一下另外一个关键字——volatile。本文就围绕volatile
weixin_33721427
·
2020-07-13 17:58
JVM运行时数据区域
文章目录JVM运行时数据区域是我们java程序员必须要掌握的一块内容,下面是我阅读《
深入理解java
虚拟机》周志明著后整理的一些笔记先来看一下JVM的整体结构MethodArea(方法区)同堆内存一样,
wandoubi
·
2020-07-13 16:22
JVM虚拟机
《
深入理解java
虚拟机》String.intern()探究
一、背景《
深入理解java
虚拟机》第二版57页对String.intern()返回引用的测试代码如下:/**String的intern例子*Createdby明明如月on2017-05-24.
明明如月学长
·
2020-07-13 16:06
Java基础
java堆的大小包括加上方法区(持久代)的大小吗
《
深入理解Java
虚拟机第二版周志明著》第41页提及到:“方法区与Java堆一样,是各个线程共享的内存区域。它用于存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据。
mzh0817
·
2020-07-13 14:52
JVM
几张图轻松理解String.intern()
在翻《
深入理解Java
虚拟机》的书时,又看到了2-7的String.intern()返回引用的测试。
唐大麦
·
2020-07-13 13:18
-------【Java基础】
Java内存溢出的典型场景测试
引言:本文是阅读经典的《
深入理解Java
虚拟机》后,对第二章的内存溢出异常情况进行总结,通过实际代码实现来验证知识点的正确性。
竹天九日
·
2020-07-13 13:25
BugKill
并发编程知识落地
Java特性的日常get
并发编程-锁的那些事儿【一:并发的本质-Java内存模型】
前言时隔几周,今天我们正式进入并发编程的艺术之中,在此我分享下指引我学习方向的书籍:《
深入理解Java
虚拟机》,《Java并发编程的艺术》,《Java并发编程实战》按照上述顺序依次阅读;真正开始接入并发这门艺术时
盘码客、汤勺
·
2020-07-13 13:07
并发编程
并发编程
JUC
Java锁
写给大忙人看的图解Java多线程之生产者与消费者设计模式
生产者与消费者读前建议
深入理解Java
线程安全——银行欠我400万!!!
Lukey Alvin
·
2020-07-13 12:52
JAVA学习
深入理解Java
内存模型JMM与volatile关键字
并发编程三大特性:可见性、原子性、有序性volatile保证可见性与有序性,但是不保证原子性,保证原子性需要借助synchronized这样的锁机制多核并发缓存架构:Java线程内存模型跟cpu缓存模型类似,是基于cpu缓存模型来建立的,Java线程内存模型是标准化的,屏蔽掉了底层不同计算机的区别。以下测试程序,测试线程会在工作内存中保存一个共享变量的副本。packagedemo6;publicc
布尼-QXT
·
2020-07-13 11:51
JMM
一文带你
深入理解Java
中的AQS!
01AQS概述AbstractQueuedSynchronizer抽象队列同步器简称AQS,它是实现同步器的基础组件,juc下面Lock的实现以及一些并发工具类就是通过AQS来实现的,这里我们通过AQS的类图先看一下大概,下面我们总结一下AQS的实现原理。先看看AQS的类图。(1)AQS是一个通过内置的FIFO双向队列来完成线程的排队工作(内部通过结点head和tail记录队首和队尾元素,元素的结
java喵~
·
2020-07-13 08:04
深入理解Java
Script系列(26):设计模式之构造函数模式
本文转载自:http://www.cnblogs.com/tomxu/archive/2012/02/21/2352994.html作者:TomXu转载请注明该声明。介绍构造函数大家都很熟悉了,不过如果你是新手,还是有必要来了解一下什么叫构造函数的。构造函数用于创建特定类型的对象——不仅声明了使用的对象,构造函数还可以接受参数以便第一次创建对象的时候设置对象的成员值。你可以自定义自己的构造函数,然
kkwant
·
2020-07-13 06:01
深入理解JAVA
创建线程的方法Thread和Runnable
/***第一种创建线程的方式*继承Thread类,重写run方法*@authorwangxin**/publicclassThreadDemo1{publicstaticvoidmain(String[]args){Threadt1=newMyThread1();Threadt2=newMyThread2();//start方法把线程拉入到线程调度,这时,线程进入runnable状态,/**等待线
huawangxin
·
2020-07-13 05:17
java
Java内存模型总结
参考资料:Java并发编程艺术,
深入理解Java
虚拟机参考博客:http://blog.csdn.net/vking_wang/article/details/8574376概述并发编程模型中需要解决两个问题
查洛巴
·
2020-07-13 04:58
java多线程
读书笔记(一)——JVM内存模型分析
初读《
深入理解Java
虚拟机》一书,顺带写下读书笔记,方便后面回顾!
Yk.FrankBian
·
2020-07-13 01:05
工作之前的随笔
走进高并发(三)
深入理解Java
内存模型
多线程程序要比单线程程序复杂的多,单线程程序中,线程从内存中读取一个变量,如果这个变量的值本身就是1,那么线程读取到的值必然是1。但是在多线程程序中,如果多线程对变量的读写没有进行合理的控制,那么后续线程读取到的变量的值很可能是2,甚至是3等。所以有必要定义一种或多种规则,保证多线程下内存数据的一致性和准确性,Java内存模型(JavaMemoryModel,JMM)由此诞生。在讨论Java内存模
itlemon_
·
2020-07-13 00:06
深入理解Java
走进高并发
JMM
Java内存模型
内存模型
[深入理解Android卷二 全文-第二章]
深入理解Java
Binder和MessageQueue
由于《深入理解Android卷一》和《深入理解Android卷二》不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容第2章
深入理解Java
Binder
阿拉神农
·
2020-07-13 00:55
深入理解Android
锁优化(自旋锁,锁消除,锁粗化,轻量级锁,偏向锁)(
深入理解JAVA
虚拟机-学习记录)
高效并发是从JDK1.5到JDK1.6的一个重要改进,HotSpot虚拟机开发团队在这个版本上花费了大量的精力去实现各种锁优化技术,如适应性自旋(AdaptiveSpinning)、锁消除(LockElimination)、锁粗化(LockCoarsening)、轻量级锁(LightweightLocking)和偏向锁(BiasedLocking)等,这些技术都是为了在线程之间更高效地共享数据,以
AllineedisU
·
2020-07-12 23:10
JVM
基于JVM原理JMM模型和CPU缓存模型
深入理解Java
并发编程
许多以Java多线程开发为主题的技术书籍,都会把对Java虚拟机和Java内存模型的讲解,作为讲授Java并发编程开发的主要内容,有的还深入到计算机系统的内存、CPU、缓存等予以说明。实际上,在实际的Java开发工作中,仅仅了解并发编程的创建、启动、管理和通信等基本知识还是不够的。一方面,如果要开发出高效、安全的并发程序,就必须深入Java内存模型和Java虚拟机的工作原理,从底层了解并发编程的实
zhuguanghalo
·
2020-07-12 23:05
java架构师
java
基于JVM原理、JMM模型和CPU缓存模型
深入理解Java
并发编程
许多以Java多线程开发为主题的技术书籍,都会把对Java虚拟机和Java内存模型的讲解,作为讲授Java并发编程开发的主要内容,有的还深入到计算机系统的内存、CPU、缓存等予以说明。实际上,在实际的Java开发工作中,仅仅了解并发编程的创建、启动、管理和通信等基本知识还是不够的。一方面,如果要开发出高效、安全的并发程序,就必须深入Java内存模型和Java虚拟机的工作原理,从底层了解并发编程的实
weixin_34167819
·
2020-07-12 23:16
几张图轻松理解String.intern()
https://blog.csdn.net/soonfly/article/details/70147205在翻《
深入理解Java
虚拟机》的书时,又看到了2-7的String.intern()返回引用的测试
tyyking
·
2020-07-12 22:26
linux编译openjdk8
最近在看《
深入理解java
虚拟机》,第一章主要讲java历史,有点意思的是编译openjdk,想自己试着搞搞,但是书上编译的是7,而且要配置一堆的配置文件,就上网查查,openjdk8貌似不用配置这么多
Michael曾
·
2020-07-12 21:25
java
linux
《
深入理解Java
虚拟机-JVM高级特性与最佳实践》学习总结(第八章)
第八章虚拟机字节码执行引擎虚拟机字节码执行引擎8.1运行时栈帧结构1.什么是栈帧?栈帧(StackFrame)是用于支持虚拟机进行方法调用和执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈(VirtualMachineStack)。2.栈帧的结构?栈帧存储了方法的局部变量表、操作数栈、动态连接和方法返回地址等信息。在编译程序代码的时候,栈帧中需要多大的局部变量表、多深的操作数栈都已经完全确定了,
雅俗共赏M
·
2020-07-12 20:53
Mac编译OpenJDK12
最近在阅读《
深入理解Java
虚拟机:JVM高级特性与最佳实践(第3版)》参照图书,在自己的Mac上进行OpenJDK12的编译.环境准备MAC参数xcode记得安装CommandLineToolsxcode-select
流里个浪
·
2020-07-12 20:23
深入理解Java
中Functionl Interface
在上一篇《
深入理解Java
双冒号(::)运算符的使用》的结尾,讲到了FunctionlInterface。
扬帆舟
·
2020-07-12 20:20
Java8
lambda
函数式接口
java8
深入理解Java
虚拟机读书笔记之:第3章 安全(3)
策略Java安全体系结构的真正好处在于,它可以对代码授予不同层次的信任度来部分地访问系统。Microsoft提供了ActiveX控件认证技术,它和Java的认证技术相类似,但是ActiveX控件并不在沙箱中运行。这样,使用了ActiveX,一系列移动代码要么是被完全信任的,要么是完全不被信任的。版本1.2的安全体系结构的主要目标之一就是使建立(以签名代码为基础的)细粒度的访问控制策略的过程更为简单
javaeeceo
·
2020-07-12 19:06
Java虚拟机(JVM)
读书笔记
深入理解Java
泛型机制
简介泛型的意思就是参数化类型,通过使用参数化类型创建的接口、类、方法,可以指定所操作的数据类型。比如:可以使用参数化类型创建操作不同类型的类。操作参数化类型的接口、类、方法成为泛型,比如泛型类、泛型方法。泛型还提供缺失的类型安全性,我们知道Object是所有类的超类,在泛型前通过使用Object操作各种类型的对象,然后在进行强制类型转换。而通过使用泛型,这些类型转换都是自动或隐式进行的了。因此提高
零度沸腾_yjz
·
2020-07-12 19:04
《
深入理解Java
虚拟机》学习之openjdk12环境搭建
最近准备把年前买的《
深入理解Java
虚拟机》第三版看完,趁着有时间,深入底层去看看,努力成为一个优秀的人吧。
Tom-Zheng
·
2020-07-12 19:09
jvm
深入理解JAVA
多态原理
之前一直知道多态是什么东西,平时敲代码也经常用到多态,但一直没有真正了解多态底层的运行机制到底是怎么样的,这两天才研究明白点,特地写下来,跟各位同学一起进步,同时也希望各位大神指导和指正。多态的概念:同一操作作用于不同对象,可以有不同的解释,有不同的执行结果,这就是多态,简单来说就是:父类的引用指向子类对象。下面先看一段代码:packagepolymorphism;classDance{publi
玉树临风PRC
·
2020-07-12 19:04
虚拟机字节码执行引擎——
深入理解Java
虚拟机
虚拟机字节码执行引擎作用:输入字节码文件,解析字节码,并且输出结果。一、运行时栈帧结构栈帧(StackFrame)是用于支持虚拟机进行方法调用和方法执行的数据结构,是虚拟机运行时数据区中的虚拟机栈(VirtualMachineStack)的栈元素。栈帧中存储了方法的局部变量表、操作数栈、动态链接和方法返回地址等信息。每一个方法从调用到执行完成的过程,都对应一个栈帧在虚拟机栈中从入栈和出栈的过程。在
xuranzyy
·
2020-07-12 17:38
JVM虚拟机
Java底层学习
最近在看几本Java的书,也做了很多笔记,主要是关于Java虚拟机、JavaGC、Java并发编程等方面,参考的主要几本书籍有:《
深入理解Java
虚拟机》——周志明《
深入理解Java
虚拟机第二版》——美
爆米花9958
·
2020-07-12 17:32
Java相关
Java
深入理解
深入理解JAVA
虚拟机学习笔记11——JDK可视化工具-VisualVM以及案例分析
VisualVM:多合一故障处理工具,功能比较全面的一个工具,与其它的检测工具相比,对实际性能影响很小,并且还具备安装插件功能。这个工具和前面介绍的JConsole工具有很多类似的功能,但是比JConsole功能更全面,朋友们可以自己到JDK的bin目录下找到jvisualvm.exe进行测试。这里简单介绍两个比较有用的插件。一个是VisualGC,可以堆内存的使用有一个更全面的监控,包括类的编译
云水禅音
·
2020-07-12 16:41
JAVA虚拟机
深入理解JAVA
虚拟机学习笔记13——字节码指令4(其他指令)
指令这块的相关信息我们在前几篇的文章中已经有了基本了解,这一篇不过多解释了,将剩下的指令列出来,作为记录(节选自《
深入理解JAVA
虚拟机》)。
云水禅音
·
2020-07-12 16:41
JAVA虚拟机
分布式架构路线(一)
一、性能调优1.1.java类文件java类文件结构Java类文件概述【JAVA】类文件结构1.2.java虚拟机类加载机制
深入理解Java
虚拟机——JVM类加载机制(类加载过程和类加载器)Java虚拟机类加载机制
NorthrendSnow
·
2020-07-12 15:04
分布式
java
java
分布式
nginx
redis
tomcat
深入理解JAVA
中MyBatis框架(1)
本文为Mybatis的基础讲解,欢迎阅读学习,一起进步。文章目录一.MyBatis简介二.框架特点三.总体流程四.功能架构五.体系结构六.MyBatis和数据交互的方式七.MyBatis配置文件一.MyBatis简介MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefoundation迁移到了googlecode,并且改名为MyBatis。2
辰兮要努力
·
2020-07-12 14:12
《
深入理解Java
虚拟机》-内存区域、回收策略
Java虚拟机为每个进程提供了独立的虚拟地址空间,这个地址空间按照用途不同被分成了不同区域。每个区域有不同的回收策略。很多问题比如多线程只要画出内存区域就很好理解了。想要更好的理解内存区域可以参考我的文章程序的机器级表示和虚拟存储器内存区域粗略划分内存区域.png栈栈是线程私有的,每个方法对应一个栈帧,进入一个方法创建一个栈帧,从一个方法返回退出当前栈帧。参数,局部变量都是分配在栈上。堆Java将
gatsby_dhn
·
2020-07-12 12:21
上一页
40
41
42
43
44
45
46
47
下一页
按字母分类:
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
其他