摘要:
No need to downgrade! Disabling configure on demand requires two steps: Remove org.gradle.configureondemand from gradle.properties. In Android Studio, 阅读全文
摘要:
在jdk7的新特性方面主要有下面几方面的增强: 1.1二进制变量的表示,支持将整数类型用二进制来表示,用0b开头。 所有整数int、short、long、byte都可以用二进制表示: 1.2 Switch语句支持String类型。 1.3 Try-with-resource语句: 参考博客:try- 阅读全文
摘要:
DOM解析 解析器读入整个文档,然后构建一个主流内存的树结构,然后代码就可以使用dom接口来操作这个树结构。 优点: 整个文档树在内存中,便于操作;支持删除、修改、重新排列等多种功能。 通过树形结构存取xml文档。 可以随时访问到某个节点的相邻节点。 缺点: 将整个文档调入内存(包括无用的节点),浪 阅读全文
摘要:
泛型中的<Object>并不是像以前那样有继承关系的,也就是说List<Object>和List<String>是毫无关系的 阅读全文
摘要:
1:javaIO与NIO区别:IO是基于流的,而NIO是基于缓存的。JavaIO每次从流中读取一个或者多个字节,知道读取所有的字节,不能前后移动流中的数据。而NIO通过通道读取到缓存区中,需要可在缓存区中前后移动, 2:javaIO是阻塞的,而NIO是非阻塞的;IO阻塞当一个线程调用read()方法 阅读全文
摘要:
循环ArrayList时,普通for循环比foreach循环花费的时间要少一点;循环LinkList时,普通for循环比foreach循环花费的时间要多很多。 当我将循环次数提升到一百万次的时候,循环ArrayList,普通for循环还是比foreach要快一点;但是普通for循环在循环LinkLi 阅读全文
摘要:
对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。 sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。 在调用sleep()方法的过程中,线程不会 阅读全文
摘要:
1:本例介绍一个特殊的队列:BlockingQueue,如果BlockingQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态,直到BlockingQueue进了东西才会被唤醒,同样,如果BlockingQueue是满的,任何试图往里存东西的操作也会被阻断进入等待状态, 阅读全文
摘要:
1. 线程池的优点: 合理利用线程池能够带来三个好处。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定 阅读全文
摘要:
Java中的ThreadLocal类允许我们创建只能被同一个线程读写的变量。因此,如果一段代码含有一个ThreadLocal变量的引用,即使两个线程同时执行这段代码,它们也无法访问到对方的ThreadLocal变量。 private ThreadLocal myThreadLocal = new T 阅读全文
摘要:
生产者消费者模式 阅读全文