JAVA

1. 引言 当各位同行点击某个杀毒软件的取消按钮来停止查杀病毒时,当各位同行在控制台敲入quit命帘救嗽结束某个后台服务时……都需要通过一个线程去取消另一个线程正在执行的任务。Java没有提供一种安全直接的方法来停止某个线程,但是Java提供了中断机制。...

HTML5已经成为当今世界的一个必然组成部分。由于World Wide Web万维网是使用超文本标记语言来架构和呈现的,于是HTML5成为了最流行的编程语言之一。随着网络的不断扩张,Web开发人员非常有必要拥有最新的HTML5工具,用于创建动态和交互式的Web应用程序和网页...

在某些情况下,你可能需要在Java中实现你自己的数据或语言解析器,也许是这种数据格式或语言缺乏标准的Java或开源解析器可以使用。或者虽然有现成的解析器实现,但它们要么太慢,要么太占内存,要么就是没有符合你所需要的特性。又或者是某个开源的解析器存在...

在最近结束的 Google IO 2015,Google 发布了期待已久的 Polymer 1.0,并宣布可用于生产环境,使用 Polymer 库的人们还在使用开发预览版,该篇将做为一个指南,指导将现在应用迁移到 Polymer最新版本。 关于 v1.0 一些重要的注意事项: 它不兼容 version 0.5...

这个故事源自一个很简单的想法:创建一个对开发人员友好的、简单轻量的线程间通讯框架,完全不用锁、同步器、信号量、等待和通知,在Java里开发一个轻量、无锁的线程内通讯框架;并且也没有队列、消息、事件或任何其他并发专用的术语或工具。 只用普通的老式...

一种编程语言是否易用,很大程度上,取决于开发命令行程序的能力。 Node.js 作为目前最热门的开发工具之一,怎样使用它开发命令行程序,是 Web 开发者应该掌握的技能。 这段时间,Npm的网志有一组系列文章,我觉得写得非常好。下面就是我在它的基础上扩展的...

系列目录: Java内存模型深度解析:基础部分 Java内存模型深度解析:重排序 Java内存模型深度解析:顺序一致性 Java内存模型深度解析:volatile Java内存模型深度解析:锁 Java内存模型深度解析:final Java内存模型深度解析:总结 与前面介绍的锁和volatil...

系列目录: Java内存模型深度解析:基础部分 Java内存模型深度解析:重排序 Java内存模型深度解析:顺序一致性 Java内存模型深度解析:volatile Java内存模型深度解析:锁 Java内存模型深度解析:final Java内存模型深度解析:总结 数据依赖性 如果两个操作...

系列目录: Java内存模型深度解析:基础部分 Java内存模型深度解析:重排序 Java内存模型深度解析:顺序一致性 Java内存模型深度解析:volatile Java内存模型深度解析:锁 Java内存模型深度解析:final Java内存模型深度解析:总结 处理器内存模型 顺序一致...

系列目录: Java内存模型深度解析:基础部分 Java内存模型深度解析:重排序 Java内存模型深度解析:顺序一致性 Java内存模型深度解析:volatile Java内存模型深度解析:锁 Java内存模型深度解析:final Java内存模型深度解析:总结 数据竞争与顺序一致性保...

系列目录: Java内存模型深度解析:基础部分 Java内存模型深度解析:重排序 Java内存模型深度解析:顺序一致性 Java内存模型深度解析:volatile Java内存模型深度解析:锁 Java内存模型深度解析:final Java内存模型深度解析:总结 锁的释放-获取建立的happ...

还记得@jayli 的这幅前端知识结构图么。 图片的形式具有诸多的不便。缺失源图的我们,无法为此图贡献些什么,随着时间的迁移,或许有些技术点会发生改变,所以有了这个GitHub项目。我们可以通过协作的方式来共同维护这个项目。Git的历史记录也可以见证前端行...

Python 是一个美丽的语言,可以激发用户对它的爱。所以假设您试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python. Python有很多吸引程序员的功能 ,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的...

网页布局(layout)是CSS的一个重点应用。 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C提出了一种新的方案----Flex布局,可以简便、完整、响...

这篇文章讨论了Java应用中并行处理的多种方法。从自己管理Java线程,到各种更好几的解决方法,Executor服务、ForkJoin 框架以及计算中的Actor模型。 Java并发编程的4种风格:Threads,Executors,ForkJoin和Actors 各位同行生活在一个事情并行发生的世界。自...

这段时间,我开发一个项目 Angular Cloud Data Connector, 帮助Angular开发者使用云数据,特别是 Azure移动服务, 使用WEB标准,像索引数据库(indexed DB)。我尝试建立一种方式,使得JavaScript开发者能将私有成员嵌入到一个对象中。 我解决这个问题的技术用...

芬兰数学家因卡拉花费3个月设计出了世界上迄今难度最大的数独游戏,而且它只有一个答案。因卡拉说只有思考能力最快、头脑最聪明的人才能破解这个游戏。 今日,一则腾讯的新闻称中国老头三天破解世界最难九宫格,虽然最后老人是改了一个数字,但是引起本人一...

在实践中,异常处理不单单是知道语法这么简单。编写健壮的代码是更像是一门艺术,在ITJS的这篇文章中,将讨论Java异常处理最佳实践。这些Java最佳实践遵循标准的JDK库,和几个处理错误和异常的开源代码。这还是一个提供给java程序员编写健壮代码的便利手册。J...

React 是 Facebook 里一群牛 X 的码农折腾出的牛X的框架。 实现了一个虚拟 DOM,用 DOM 的方式将需要的组件秒加,用不着的秒删。React 扮演着 MVC 结构中 V 的角色, 不过你要是 Flux 搭配使用, 你就有一个很牛X的能让轻松让 M 和 V 同步的框架了,Flux 的事...

ITJS的这篇文章主要详解了Java语言的8大排序的基本思想以及实例解读,详细请看下文 8种排序之间的关系: 1, 直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n...

php给了开发者极大的灵活性,但是这也为安全问题带来了潜在的隐患,近期需要总结一下以往的问题,在这里借翻译一篇文章同时加上自己开发的一些感触总结一下。 当开发一个互联网服务的时候,必须时刻牢记安全观念,并在开发的代码中体现。PHP脚本语言对安全问...

JSR 354定义了一套新的Java货币API,计划会在Java 9中正式引入。ITJS的这篇文章中各位同行将来看一下它的参考实现:JavaMoney的当前进展。 正如本人在之前那篇Java 8新的日期时间API一文中那样,ITJS的这篇文章主要也是通过一些代码来演示下新的API的用法 。...

构建 这里搜集了用来构建应用程序的工具。Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建。Maven优于Apache Ant。后者采用了一种过程化的方式进行配置,所以维护起来相当困难。 Gradle:Gradle采用增量构建。Gradle通...

在各位同行的云使用分析API中,返回了格式化过的分析数据(这里指生成分析图)。最近,各位同行添加了一个特性,允许用户选择时间段(最开始只可以按天选择)。问题是,代码中每天中的时间段部分高度耦合了…… 例如,下面这段代码: private static List<...

HashMap是一个高效通用的数据结构,它在每一个Java程序中都随处可见。先来介绍些基础知识。你可能也知道,HashMap使用key的hashCode()和equals()方法来将值划分到不同的桶里。桶的数量通常要比map中的记录的数量要稍大,这样每个桶包括的值会比较少(最好是一...