Java
文章平均质量分 83
ty_laurel
这个作者很懒,什么都没留下…
展开
-
java多线程学习
进程线程什么是进程呢? 进程就是程序(任务)的执行过程,它是动态性的,比如大家常使用的QQ、开发用的Eclipse等经过点击运行就可以看作一个进程,在磁盘中存储的相关文件不是进程;进程持有资源(共享内存,共享文件)和线程。 那什么是线程呢? 拿QQ来说,在你和朋友进行文字聊天的同时还可以收发文件;在使用Eclipse进行源代码编辑,后台会进行语法检验和源代码编译,这些不同的小任原创 2016-08-28 16:27:10 · 557 阅读 · 0 评论 -
Java泛型
什么是泛型泛型是Java SE 1.5的新特性,Java语言引入泛型的好处是安全简单,并且以提高代码的重用性。在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,原创 2016-10-27 14:05:27 · 432 阅读 · 0 评论 -
java锁学习笔记
1.减小锁持有时间 减少锁的持有时间有助于降低锁冲突的可能性,进而提升系统的并发能力。即就是只在必要时进行同步,不需要同步操作的代码,尽量注意不要也加入需要同步的代码块中,这样就可以明显的减少线程持有锁的时间,提高系统的吞吐量。2.减小锁粒度 减小锁粒度是一种削弱多线程锁竞争的有效手段。这种技术典型的使用场景就是ConcurrentHashMap类的原创 2017-07-29 20:24:36 · 294 阅读 · 0 评论 -
java 单例模式与多线程
什么是单例模式单例模式是一种创建型模式,某个类在采用了单例模式,在该类创建后,只能产生一个实例供外部访问,并且提供一个全局的访问点。数据库连接池的设计一般就是采用单例模式,因为数据库连接是一种数据库资源。数据库软件系统中使用数据库连接池,主要就是节省打开或关闭数据路连接所引起的效率损耗,使用单例模式,就可以大大降低这些损耗饿汉模式饿汉模式也称为立即加载,即就是使用类的时候已原创 2017-07-14 23:03:35 · 408 阅读 · 0 评论 -
java 7新特性-TWR(Try-with-resources)
在java 7之前,一般在进行文件IO操作时都需要显式的进行文件流的close操作,无论是操作到文件流末尾还是发生异常。往往很简单的一个逻辑都要好几行的代码进行修饰,使得代码结构变的复杂。如下程序就使用了TWR,避免了java 7之前使用finally块时的繁琐,使得程序变得简洁package javaFile.copyfile;import java.io.FileInputStre原创 2017-03-05 22:12:21 · 9009 阅读 · 0 评论 -
Java集合之Map
前边对Java单列集合Collection有了基本的了解,现在开始学习下集合的Map接口。Map是一个非常有用的数据结构,该接口是一个双列集合,所谓双列就是Map是依照键(key)-值(value)对的序列来存储元素,该元素是两个对象,其中的键(key)是唯一的,不能重复,而每个键对应的值(value)则不同,value可以重复。对于Map这种特点在生活中挺常见的,比如,现在每个人都有一个原创 2016-10-17 00:28:32 · 928 阅读 · 0 评论 -
log4j日志处理实战
前边博文介绍学习了log4j的基本功能及使用,接下来根据Log4j已有的实现方法结合实际需求进行二次开发,以更好的满足实际的需求。Log4j概述Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务 器、NT的事件记录器、UNIXSyslog守护进程等;我们也可以控制每一条日志的输出格式原创 2017-03-08 14:10:38 · 360 阅读 · 0 评论 -
log4j日志处理学习
log4j学习本次学习Log4j日志框架的主要目的是为了实现对大数据平台的日志管理,因为现在的平台日志信息实在是太过庞大了,所占的硬盘空间也会越来越多,为了对日志信息文件做相应的管理,从而可以使用Log4j实现这些功能。什么是Log4jLog4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是原创 2016-10-22 19:21:50 · 2483 阅读 · 0 评论 -
Java synchronized关键字学习二
接上一篇博文: synchronized(非this对象x) 格式的写法是将x对象本身作为“对象监视器”,这样就可以得出如下3个结论: 1)当多个线程同时执行synchronized(x){}同步代码块时呈同步效果; 2)当其他线程执行x对象方法里面的synchronized同步方法时呈同步效果; 3)当其他线程执行x对象方法里面的synchronized(this)代码块时也呈现原创 2017-03-08 13:46:25 · 300 阅读 · 0 评论 -
Java synchronized关键字学习一
介绍synchronized是Java语言的关键字,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。当两个并发线程访问同一个对象object中的这个加锁同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。然而,当一个线程访问object的一个加锁代码块时,另一个线程仍然原创 2017-03-06 17:28:27 · 415 阅读 · 0 评论 -
Java集合Collection接口之List子接口
List接口介绍List接口是有序的collection(也称为序列,这个有序不是指的自然顺序,而是指添加进集合中的顺序与元素出来的顺序一致),用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。 主要的实现类有如下三个: ArrayList :底层是维护了一个Objecy数组实现的,特点:查询速度快,增删慢;原创 2016-10-05 16:07:23 · 928 阅读 · 0 评论 -
Java集合之Collection接口
集合概述Java集合类是一种类似于数组的,存储对象引用(而非对象本身)的容器。集合石存储对象最常用的一种方式。集合中可以存储任意类型的对象,且长度可变,这就是说它类似于数组却又不同于数组的原因,集合比数组更加适用。集合可以使用对象的增、删、改、查等操作。集合框架图图中,实现边框的是实现类,如ArrayList、LinkedList、HashMap等;短线边框的是抽象类,如AbstractCollec原创 2016-10-04 20:10:08 · 691 阅读 · 0 评论 -
java多线程之内存可见性学习笔记
java多线程之内存可见性:1.什么是可见性 可见性:一个线程对共享变量值的修改,能够及时地被其他线程看到。共享变量:如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量。Java内存模型(JMM)Java内存模型(Java Memory Model)描述了Java程序中各种变量(线程共享变量)的访问规则,以及在JVM中将变原创 2016-09-01 21:56:28 · 2062 阅读 · 0 评论 -
Java线程池
多线程的软件设计方法确实可以最大限度地发挥现代多核处理器的计算能力,提高生产系统的吞吐量和性能。但是,若不加控制和管理的随意使用线程,对系统的性能反而会产生不利的影响。什么是线程池 为了避免系统频繁地创建和销毁线程,我们可以让创建的线程进行复用。比如数据库中的数据库连接池,为了避免每次数据库查询都重新建立和销毁数据库连接,我们可以使用数据库连接池维护一些数据库连接,让他们长期保持在一个激活状态。当原创 2017-08-04 10:54:38 · 464 阅读 · 0 评论