java提高
文章平均质量分 85
wingooom
程序猿一只
展开
-
java提高之util.concurrent(待完成)
sdf原创 2016-03-29 16:26:41 · 304 阅读 · 0 评论 -
Java动态代理
Java主要有两种代理,JDK和Cglib动态代理。Java的JDK动态代理一个接口public interface Advice { public void before(); public void after(); }有两个横切逻辑类,如下:public class TimeAdvice implements Advice { long startTim原创 2016-07-08 19:28:07 · 318 阅读 · 0 评论 -
Java提高篇之BIO、NIO、AIO
综述Java IO的方式通常分为同步阻塞的BIO(通常意义上的IO)、同步非阻塞的NIO、异步非阻塞的AIO。JDK1.4之前只支持BIO,1.4后开始支持NIO,1.7开始支持AIO。同步阻塞BIO同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,可以通过线程池机制改善。 举例:自己去ATM排队原创 2016-07-18 21:22:47 · 353 阅读 · 0 评论 -
SSH框架之Spring
概述核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际原创 2016-07-04 20:38:39 · 911 阅读 · 0 评论 -
Java提高篇之NIO
概述在 Java 编程中,直到最近一直使用 流 的方式完成 I/O。所有 I/O 都被视为单个的字节的移动,通过一个称为 Stream 的对象一次移动一个字节。流 I/O 用于与外部世界接触。它也在内部使用,用于将对象转换为字节,然后再转换回对象。NIO 与原来的 I/O 有同样的作用和目的,但是它使用不同的方式? 块 I/O。正如您将在本教程中学到的,块 I/O 的效率可以比流 I/O 高许多。J原创 2016-06-12 09:55:00 · 359 阅读 · 0 评论 -
JUC锁机制
http://www.cnblogs.com/skywang12345/p/java_threads_category.html障碍器CyclicBarrier概述Java5中,添加了障碍器类,为了适应一种新的设计需求,比如一个大型的任务,常常需要分配好多子任务去执行,只有当所有子任务都执行完成时候,才能执行主任务,这时候,就可以选择障碍器了。CyclicBarrier是一个同步辅助类,允许一组线程原创 2016-06-08 21:57:35 · 1412 阅读 · 0 评论 -
JAVA多线程之JUC原子类
JUC原子类框架JUC即是指:java.util.concurrent包。基本类型: AtomicInteger, AtomicLong, AtomicBoolean ;数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray ;引用类型: AtomicReference, AtomicStampedRerence, Ato原创 2016-06-08 21:27:54 · 1991 阅读 · 0 评论 -
java多线程完美篇
Runnable和Thread实现多线程的区别联系Thread 实现了Runnable接口 public class Thread implements Runnable{ }区别Java中实现多线程有两种方法:继承Thread类、实现Runnable接口,在程序开发中只要是多线程,肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下优势:可以避免由于J原创 2016-06-08 13:24:14 · 451 阅读 · 0 评论 -
UML类的关系浅析
这是一堂关于UML基础知识的补习课;现在我们做项目时间都太紧了,基本上都没有做过真正的class级别的详细设计,更别提使用UML来实现规范建模了;本篇主要就以前自己一直感觉很迷糊的几种class之间的关系进行整理,让我们在真正用UML进行比如类图设计时能够更加清晰明了;以下就分别介绍这几种关系:基本关系继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的原创 2016-06-08 19:06:05 · 297 阅读 · 0 评论 -
百问百答之Java多线程篇
1、多线程有什么用?一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓”知其然知其所以然”,”会用”只是”知其然”,”为什么用”才是”知其所以然”,只有达到”知其然知其所以然”的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看法:(1)发挥多核CPU的优势随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双核的,转载 2016-06-08 18:02:00 · 361 阅读 · 0 评论 -
java多线程基础概念
概念与原理用户线程与守护线程线程总体分两类:用户线程和守候线程。当所有用户线程执行完毕的时候,JVM自动关闭。但是守候线程却不独立于JVM,守候线程一般是由操作系统或者用户自己创建的。守护线程守护线程与普通线程写法上基本么啥区别,调用线程对象的方法setDaemon(true),则可以将其设置为守护线程。守护线程使用的情况较少,但并非无用,举例来说,JVM的垃圾回收、内存管理等线程都是守护线程。还有原创 2016-06-08 13:31:05 · 350 阅读 · 0 评论 -
数据结构之排序篇
概述参考https://www.zybuluo.com/MicroCai/note/77440 http://www.jianshu.com/p/ae97c3ceea8d用到的数据结构都是数组(array)稳定排序稳定排序是指:若是数组中有相同的元素,则相同的元素的相对位置不变。 排序名称 最好 最坏 平均时间复杂度 空间复杂度 备注 冒泡(Bubble Sort)原创 2016-03-29 16:29:42 · 661 阅读 · 2 评论 -
Java基础之List实现篇
[参考原文]http://www.cnblogs.com/skywang12345/p/3308556.htmlArrayListArrayList简介ArrayList 是一个 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。ArrayLis原创 2016-03-26 22:42:08 · 1276 阅读 · 0 评论 -
Java提高篇之字符串的拼接
java字符串连接各种拼接方法的效率比较import java.util.ArrayList;import java.util.List;import org.apache.commons.lang.StringUtils;import org.junit.Test;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public原创 2016-04-29 14:00:01 · 2272 阅读 · 1 评论 -
Java提高篇之常量池
一.相关概念1. 什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。2. Class文件中的常量池在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JVM接受,再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主版本号,再接着是用于存放常原创 2016-04-28 22:50:49 · 9514 阅读 · 6 评论 -
Java提高之优化篇(待完成)
sdf原创 2016-03-24 22:39:57 · 369 阅读 · 0 评论 -
Java提高之内存模型(待完成)
撒旦法原创 2016-03-29 16:28:31 · 365 阅读 · 0 评论 -
Java提高之JVM(待完成)
sdf原创 2016-03-29 16:27:59 · 362 阅读 · 0 评论 -
海量大数据解决方案
https://wizardforcel.gitbooks.io/the-art-of-programming-by-july/content/06.03.html分而治之问题 1:有10个文件,每个文件1G,每个文件的每一行存放的都是用户的query,每个文件的query都可能重复。要求你按照query的频度排序,求TopK解决:hash映射顺序读取10个文件,按照hash(query)%10的原创 2016-08-03 21:10:38 · 664 阅读 · 0 评论