Java集合
早在 Java 2 中之前,Java 就提供了特设类。比如:Dictionary, Vector, Stack, 和 Properties 这些类用来存储和操作对象组。 虽然这些类都非常有用,但是它们缺少一个核心的,统一的主题。由于这个原因,使用 Vector 类的方式和使用 Properties 类的方式有着很大不同。 集合框架被设计成要满足以下几个目标。 该框架必须是高性能的。基本集合(动态数组,链表,树,哈希表)的实现也必须是高效的。 该框架允许不同类型的集合,以类似的方式工作,具有高度的互操作性。 对一个集合的扩展和适应必须是简单的。 为此,整个集合框架就围绕一组标准接口而设计。你可以直接使用这些接口的标准实现,诸如: LinkedList, HashSet, 和 TreeSet 等,除此之外你也可以通过这些接口实现自己的集合。 从上面的集合框架图可以看到,Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set...
Java中的强引用、软引用、弱引用和虚引用
Java中的强引用、软引用、弱引用和虚引用Java执行GC判断对象是否存活有两种方式其中一种是引用计数。 引用计数:Java堆中每一个对象都有一个引用计数属性,引用每新增1次计数加1,引用每释放1次计数减1。 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于(reachable)可达状态,程序才能使用它。 从JDK 1.2版本开始,对象的引用被划分为4种级别,从而使程序能更加灵活地控制对象的生命周期。 Java中4种引用的级别和强度由高到低依次为:强引用 -> 软引用 -> 弱引用 -> 虚引用 引用类型 被垃圾回收时间 用途 生存时间 案例 强引用 从来不会 对象的一般状态 JVM停止运行时终止 通过new或反射创建的引用对象 软引用 当内存不足时 对象缓存 内存不足时终止 弱引用 正常垃圾回收时 对象缓存 垃圾回收后终止 虚引用 正常垃圾回收时 跟踪对象的垃圾回收 垃圾回收后终止 DirectByteBuffer堆外内存释放 参考文章 理解Java的强引用、...
Java常用日志框架
Java常用日志框架介绍 Log4j Apache Log4j是一个基于Java的日志记录工具。它是由Ceki Gülcü首创的,现在则是Apache软件基金会的一个项目。 Log4j是几种Java日志框架之一。 Log4j2 Apache Log4j 2是apache开发的一款Log4j的升级产品。 Commons Logging Apache基金会所属的项目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名为Commons Logging。 Slf4j 类似于Commons Logging,是一套简易Java日志门面,本身并无日志的实现。(Simple Logging Facade for Java,缩写Slf4j)。 Logback 一套日志组件的实现(slf4j阵营)。 Jul (Java Util Logging),自Java1.4以来的官方日志实现。 Java常用框架历史 1996年早期,欧洲安全电子市场项目组决定编写它自己的程序跟踪API(Tracing API)。经过不断的完善,这个API终于成为一个十分受欢迎...
Netty简介
官网简介: Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.用一句话来概括: Netty是一个异步事件驱动的网络应用框架,用于快速开发可维护的高性能协议服务器和客户端。 特征设计 适用于各种传输类型的统一API - 阻塞和非阻塞套接字 基于灵活且可扩展的事件模型,可以清晰地分离关注点 高度可定制的线程模型 - 单线程,一个或多个线程池,如SEDA 真正的无连接数据报套接字支持(自3.1起) 易用 详细记录的Javadoc,用户指南和示例 没有其他依赖项,JDK 5(Netty 3.x)或6(Netty 4.x)就足够了 性能 吞吐量更高,延迟更低 减少资源消耗 最小化不必要的内存复制 安全 完整的SSL / TLS和StartTLS支持 架构示意图
使用Hexo搭建个人博客
记录一下自己使用Hexo搭建个人博客的过程,以及搭建过程中踩过的坑。 Hexo简介这里引用Hexo官网介绍: 快速、简洁且高效的博客框架A fast, simple & powerful blog framework. 一、为什么选择Hexo之前也想过自己用java写一个博客系统,顺便能学习一些开发技术。通过一段时间的折腾,主要发现有一下几个问题,于是放弃了自己开发的计划转而采用开源框架。 使用java自行开发个人博客系统遇到的问题: 开发周期长:虽然可以使用一些脚手架快速搭建博客系统框架,但是仍需要个人大量的开发时间去实现及调试代码。 UI样式不美观: 由于本人是非前端开发人员,只能通过前端的一些脚手架去搭建博客前端,UI设计不够美观。 偏离初始目标:自己开发博客的目标是通过开发过程提高编码水平,但是随着在工作中的成长,知识面已经铺开,搭建个人博客已经无法带来技术深层面成长,只是重复造轮子罢了。 hexo 博客的优点 支持MarkDown格式 使用Node.js生成静态文件,部署简便 有丰富的主题可以选择 有丰富的插件扩展性强 选择hexo搭建个人博客...
Forecasting Research on the Wireless Mesh Network Throughput Based on the Support Vector Machine
《基于支持向量机的无线Mesh网络吞吐量预测》 —— 论文 您的浏览器不支持显示PDF文件 📥 点击这里下载PDF文件





