`
文章列表

JVM基础知识

    博客分类:
  • JVM
2. Java运行时环境 — 其实就是考JVM JVM与Hotspot的关系:JVM是规范,Hotspot是对规范的实现。 JVM三个部分必须非常清楚:内存划分、class加载机制、GC策略。 1)内存划分 我们常说的对于内存的划分,通常是指Hotspot的划分方式,而非JVM规范所规定的。 Hotspot将JVM内存划分为三个部分,Young Generation(年轻代)、Old Generation(年老代)、Perm Generation(永久代)。其中,Young Generation又分为Eden、From和To. 其中From和To又统称为Survivor Spaces(幸 ...
1. 语言基础 基础部分的重点: 1)关键字:static, final, transient, volatile。 2)高阶语法:内部类、泛型。 具体解释: 1)static: static变量不会被GC回收,也就意味着有内存泄露的风险。— 融云的项目还会造成频繁的Full GC. static ...
前提: 1. 心态 心态上要静下心来看书,一点一点扣,切忌浮躁。 2. 欲望 欲望是前进的动力。 一。基本要求:必须会的,必考的 1. 语言基础 基础部分的重点: 1)关键字:statis, final, transient, volatile。 2)高阶语法:内部类、泛型。 具体解释: 1)static: static变量不会被GC回收,也就意味着有内存泄露的风险。— 融云的项目还会造成频繁的Full GC. static会将所引用的属性、方法、内部类,与类直接产生引用关系,而不是与类的实例。为什么一个没有被static修饰的内部类,必须要这么声明: OuterCla ...
2016-10-29 比较薄弱的环境: 1. 算法:例如贪心等 --> 面试必考 2. 各种底层原理: 1)各种协议,如XMPP、HTTP、TCP 2)DNS解析 3)Redis底层原理 4)MySQL底层原理 5)Kafka、zookeeper、ActiveMQ、Dobbo等 3. Java框架:如Spring, Mybatis等,JS等 4. 其他语言Python、Go、函数式编程。 5. 项目:研究CMP、Cluster、XMPP层、以及消息服务等。 ------------------------------------------------------- 2016 ...
原文地址: http://www.importnew.com/20457.html 简介 对于想要利用ZooKeeper的协调服务来创建一个分布式应用的开发人员来说,这篇文章提供了指导。包含了一些概念和实际性操作的信息。 这篇文章的前四个章节介绍了各种ZooKeeper的概 ...
原文地址:http://www.cnblogs.com/itfly8/p/5043435.html http://www.cnblogs.com/itfly8/p/5043452.html http://www.cnblogs.com/itfly8/p/5080743.html http://www.cnblogs.com/itfly8/p/5080988.html
http://www.cnblogs.com/itfly8/p/5128025.html

8张图理解Java

原文地址:http://www.importnew.com/11725.html

Java并发编程

Java并发编程(1):可重入内置锁 http://www.importnew.com/20487.html Java并发编程(2):线程中断(含代码) http://www.importnew.com/20527.html Java并发编程(3):线程挂起、恢复与终止的正确方法(含代码)   http://www.importnew.com/20539.html Java并发编程(4):守护线程与线程阻塞的四种情况 http://www.importnew.com/20551.html Java并发编程(5):volatile变量修饰符—意料之外的问题(含代码)http://www.i ...
原文地址:http://www.importnew.com/18689.html 1 概述 众所周知,Java支持平台无关性、安全性和网络移动性。而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统一的编程接口,而不管下层操作系统是什么。正是得益于Jav ...
原文地址:http://www.cnblogs.com/dolphin0520/p/3932921.html Java并发编程:线程池的使用   在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:   如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。   那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?   在Java中可以通过线程池来达到这样的效果。今天我们就来详细讲解一下Java的线程池,首先 ...
原文地址:http://www.blogjava.net/hello-yun/archive/2012/10/10/389289.html 一致性哈希算法是分布式系统中常用的算法。比如,一个分布式的存储系统,要将数据存储到具体的节点上,如果采用普通的hash方法,将数据映射到具体的节点上,如key%N,key是数据的key,N是机器节点数,如果有一个机器加入或退出这个集群,则所有的数据映射都无效了,如果是持久化存储则要做数据迁移,如果是分布式缓存,则其他缓存就失效了。     因此,引入了一致性哈希算法: 把数据用hash函数(如MD5),映射到一个很大的空间里,如图所示。数据的存 ...

Java虚拟机

JAVA虚拟机的生命周期:http://www.importnew.com/17455.html 【深入Java虚拟机(1)】:Java内存区域与内存溢出 http://www.importnew.com/19946.html 【深入Java虚拟机(2)】:Class类文件结构 http://www.importnew.com/19987.html 【深入Java虚拟机(3)】:类初始化 http://www.importnew.com/20040.html 【深入Java虚拟机(4)】:类加载机制 http://www.importnew.com/20054.html 【深入Java ...
原文地址:http://www.cnblogs.com/dolphin0520/p/3923167.html 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访 ...
原文地址:http://www.importnew.com/18604.html Java集合框架概述 Java集合框架无论是在工作、学习、面试中都会经常涉及到,相信各位也并不陌生,其强大也不用多说,博主最近翻阅java集合框架的源码以及搜索一些相关资料整理出Java集合框架的系列。一方面是做一个总结,方便以后查阅,另一方面希望各位小伙伴能够提出不足之处,我会及时更新修改。 这里写图片描述 博主从网上抠了一张图,觉得画得还是比较形象的,给大家参考一下。 上述类图中,实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象类,比如AbstractCo ...
Global site tag (gtag.js) - Google Analytics