java
Saiheihua
这个作者很懒,什么都没留下…
展开
-
jar包冲突分析及解决
jar包冲突原因 我们知道maven有传递性依赖机制,举例来说,当我们需要A的依赖的时候,就会在pom.xml中引入A的jar包;而A的jar包中依赖了B的jar包,这样Maven在解析pom.xml的时候,会依次将A、B 的jar包全部都引入进来。 这样就会造成一个问题: A->B->C->G21(guava 21.0) E->F->G20(guava 20.0) 假设pom.xml 文件中引入A与E两个依赖,按照上述的传递性依赖机制,与默认的依赖调解机制(第一:路径最近者优原创 2020-09-22 11:38:11 · 472 阅读 · 0 评论 -
java守护线程的设置
在创建一个线程时,可以在主线程里将其设置为守护线程,线程.setdaemon,但只有守护线程在运行时,会自动关闭原创 2020-08-23 10:42:23 · 168 阅读 · 0 评论 -
字符串
在使用new String(“a”)的时候首先会new一个空的String对象,然后在常量池生成一个常量a,然后把a传到空的String对象里,在使用Stringbuild()返回String类型时,会使用Stringbuild的的toString方法,把生成一个新的String对象,然后把Stringbuild的value值作为参数传入到String中,并不会在常量池生成一个新的对象 ...原创 2020-08-20 22:51:45 · 85 阅读 · 0 评论 -
hashtable和hashmap
HashMap在Jdk1.7和1.8中的实现 一、初窥HashMap HashMap是应用更广泛的哈希表实现,而且大部分情况下,都能在常数时间性能的情况下进行put和get操作。要掌握HashMap,主要从如下几点来把握: jdk1.7中底层是由数组(也有叫做“位桶”的)+链表实现;jdk1.8中底层是由数组+链表/红黑树实现 可以存储null键和null值,线程不安全。在HashMap中,null可以作为键,这样的键只有一个,但可以有一个或多个键所对应的值为null。当get()方法返回null值原创 2020-08-01 19:20:38 · 90 阅读 · 0 评论 -
lambda与多线程和线程任务
1.利用lambda创建一个线程任务,然后thread.start执行 `public static void main(String[] args) { /** * 建立一个线程任务,然后在主线程你执行 */ Runnable a = () -> { System.out.println("1"); }; new Thread(a).start(); Syste原创 2020-07-31 21:58:47 · 175 阅读 · 0 评论