本系列为《深入理解Java虚拟机 》(周志明著)读书笔记。 Java中的垃圾收集器 JVM规范对于垃圾收集器的实现没有任何规定,因此不同厂商、版本的虚拟机所提供的垃圾收集器可能会有很大的差异。这里我们的讨论将基于Sun
本文介绍一些Java源代码优化和分析工具,以帮助我们优化代码以及检查源代码中的潜在问题。 本文英文原文来源: http://java.dzone.com/articles/java-tools-source-code
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,
Java线程池使用说明 一简介 线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的。在jdk1.5之后这一情况有了很大的改观。Jdk1.5之后加入了java
原文出处: 博客(从零到无穷大) Java内存模型(Java Memory Model) Java内存模型(JMM),不同于Java运行时数据区,JMM的主要目标是定义程序中各个变量的访问规则,即
最全面的 java多线程 用法解析,如果你对Java的多线程机制并没有深入的研究,那么本文可以帮助你更透彻地理解Java多线程的原理以及使用方法。 1.创建线程 在Java中创建线程有两种方法:使
Java 8支持default方法,本文也主要来讲解一下Java 8中default方法的使用方法,比较详细。 什么是default方法? Java 8发布以后,可以给接口添加新方法,但是,接口仍
译者:fangqiang08(fangqiang08@gmail.com) java 7使得我们能够在同一个catch语句块中捕获多种不同的异常,这也叫做多重异常捕获。 在java7以前,我们可能要这样做: try { //
xml中设置各种参数,我们将在下面看到。 视图文件index.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib
jooby是用于Java8环境下的简约Web开发框架。受express.js启发。( express.js 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。Express
这一小节概述了try-catch-finally 语句是怎样处理错误的,文中的例子是Java的,但是同样的规则也适用于C#。java和C#中异常的唯一区别就是C#中没有已检查异常。已检查异常和未检查异常将在后面小节更加详细地介绍。
Android 一般使用 JUnit,也有很多其它不同的测试框架.
plugin for generating Java "page objects" out of YAML. 使用 SeLion 之前,你需要安装下面这些软件: Java JDK 1.7 Maven 3
当Timer的构造器被调用时,它创建了一个线程,这个线程可以用来调度任务: import java.util.Timer; import java.util.TimerTask; public class Task2 {
ct)。最后,我们需要断言( A ssert)测试系统是否已经生成了期望的结果。 让我们来看一个Java JUnit测试的示例,它展示了这种模式: @Test public void testAddition()
Reflections 通过扫描 classpath,索引元数据,允许在运行时查询这些元数据,也可以保存收集项目中多个模块的元数据信息。
Spring框架的核心功能有两个 Spring容器作为超级大工厂,负责创建、管理所有的Java对象,这些Java对象被称为Bean Spring容器管理容器中Bean之间的依赖关系,Spring使用一
这篇文章通过实例讨论了: - java.concurrent.Lock创建的垃圾 - 比较Lock和synchronized - 如何通过编程方式计算延时 - Lock和synchronized竞争带来的影响
1、带着疑问看图 1)竞争对象的锁和竞争CPU资源以及竞争被唤醒 2)何种情况下获取到了锁,何种情况下会释放锁
CPU,一般认为写C/C++的才需要了解,写高级语言的(Java/C#/pathon…)并不需要了解那么底层的东西。我一开始也是这么想的,但直到碰到LMAX的 Disruptor ,以及 马丁的博文 ,才发现写Java的,更加不能忽视CP