随笔分类 -  Java

解析Xml文件的三种方式
摘要:1、Sax解析(simple api for xml) 使用流式处理的方式,它并不记录所读内容的相关信息。它是一种以事件为驱动的XML API,解析速度快,占用内存少。使用回调函数来实现。 2、Dom解析 DOM(Document Object Model) 是一种用于XML文档的对象模型,可用于直 阅读全文
posted @ 2017-02-04 22:29 向着大牛奋斗 阅读(9466) 评论(0) 推荐(0)
java泛型中的super和extend
摘要:List<? extend Fruit> list=new ArrayList<>(); 解释为:集合中元素是继承自Fruit,究竟是何种类型,编译器也无法判定。 如果要从集合中读取类型T的数据,并且不能写入,可以使用 ? extends 通配符;(Producer Extends) List<? 阅读全文
posted @ 2016-10-10 12:58 向着大牛奋斗 阅读(9083) 评论(0) 推荐(0)
java之注解Annotation
摘要:元注解:负责注解其他注解,java5提供的4个meta-annotation元注解 @Target 规定注解修饰的范围 @Retention 对Annotation的“生命周期”限制:某些Annotation仅出现在源代码中,而被编译器丢弃;而另一些却被编译在class文件中;编译在class文件中 阅读全文
posted @ 2016-10-09 15:53 向着大牛奋斗 阅读(167) 评论(0) 推荐(0)
线程终止那些事
摘要:说到中断线程,第一反应肯定是使用 interrupt(),但是需要注意的是,使用该方法并不会马上中断线程。。。。。 先来了解下如何判断一个线程被中断了: 注意到最后都会调用 isInterrupted(bool b) 这个布尔类型的变量代表什么什么意思呢? 阅读全文
posted @ 2016-09-29 13:21 向着大牛奋斗 阅读(224) 评论(0) 推荐(0)
阻塞队列与非阻塞队列
摘要:阻塞队列 阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当队列满时,存储元素的线程会等待队列可用。阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。阻塞队列就是生 阅读全文
posted @ 2016-09-27 16:16 向着大牛奋斗 阅读(4901) 评论(0) 推荐(0)
java基础回顾(八)——Queue
摘要:今天回顾了下关于Queue的一些相关知识 我们可以看到,Deque也是一个接口,它继承了Queue的接口规范。其中LinkedList和ArrayDeque都是实现Deque接口,所以,可以说他们俩都是双向队列.. 定义了add, offer两个方法,从doc说明上来看,两者的基本上没什么区别。之所 阅读全文
posted @ 2016-09-27 13:23 向着大牛奋斗 阅读(172) 评论(0) 推荐(0)
java基础回顾(七)——ThreadPoolExecutor
摘要:先来看一下构造函数 重点讲解: 1、当线程池小于corePoolSize时,新提交任务将创建一个新线程执行任务,即使此时线程池中存在空闲线程。 2、当线程池达到corePoolSize时,新提交任务将被放入workQueue中,等待线程池中任务调度执行 3、当workQueue已满,且maximum 阅读全文
posted @ 2016-09-27 11:05 向着大牛奋斗 阅读(216) 评论(0) 推荐(0)
java基础回顾(六)——WeakReference、SoftReference
摘要:在Java里, 当一个对象o被创建时, 它被放在Heap里. 当GC运行的时候, 如果发现没有任何引用指向o, o就会被回收以腾出内存空间. 或者换句话说, 一个对象被回收, 必须满足两个条件: 1)没有任何引用指向它 2)GC被运行. 在现实情况写代码的时候, 我们往往通过把所有指向某个对象的re 阅读全文
posted @ 2016-08-29 15:31 向着大牛奋斗 阅读(166) 评论(0) 推荐(0)
java基础回顾(五)——Stack、Heap
摘要:栈(stack):是简单的数据结构,但在计算机中使用广泛。栈最显著的特征是:LIFO(Last In, First Out,后进先出)。比如我们往箱子里面放衣服,先放入的在最下方,只有拿出后来放入的才能拿到下方的衣服。栈中只存放基本类型和对象的引用(不是对象)。 堆(heap):堆内存用于存放由ne 阅读全文
posted @ 2016-08-29 14:11 向着大牛奋斗 阅读(147) 评论(0) 推荐(0)
java基础回顾(四)——锁机制
摘要:关键字Synchronized 1、对于同步的方法或者代码块来说,必须获得对象锁才能够进入同步方法或者代码块进行操作; 2、如果采用method级别的同步,则对象锁即为method所在的实例对象,如果是静态方法,对象锁即指method所在的Class对象(唯一) 3、对于代码块,对象锁即指synch 阅读全文
posted @ 2016-08-25 15:09 向着大牛奋斗 阅读(109) 评论(0) 推荐(0)
java基础回顾(三)——HashMap与HashTable
摘要:HashTable 注意1 方法是同步的注意2 方法不允许value==null注意3 方法调用了key的hashCode方法,如果key==null,会抛出空指针异常 HashMap 注意1 方法是非同步的注意2 方法允许key==null注意3 方法并没有对value进行任何调用,所以允许为nu 阅读全文
posted @ 2016-08-22 13:31 向着大牛奋斗 阅读(132) 评论(0) 推荐(0)
java基础回顾(二)——内部类
摘要:一、常规内部类 实例化内部类 二、静态内部类 实例化内部类 阅读全文
posted @ 2016-08-22 10:35 向着大牛奋斗 阅读(135) 评论(0) 推荐(0)
java基础回顾(一)—— sleep和wait的区别
摘要:sleep是Thread类的一个方法,wait是Object类的一个方法 sleep是线程被调用时,占着cpu去睡觉,其他线程不能占用cpu,os认为该线程正在工作,不会让出系统资源 wait是进入等待池等待,让出系统资源 sleep是静态方法,是谁调用的谁去睡觉,就算是在main线程里调用了线程b 阅读全文
posted @ 2016-08-22 09:53 向着大牛奋斗 阅读(181) 评论(0) 推荐(0)