摘要: 1、Java内存模型是什么? Java内存模型(Java Memory Model ,JMM)就是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异的,保证了Java程序在各种平台下对内存的访问都能保证效果一致的机制及规范。Java内存模型对一个线程所做的变动能被其它线程可见提供了保证cpu 阅读全文
posted @ 2019-09-05 21:25 吴某1 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 1、数据一致性如何保证 (线程的安全和线程同步) 线程安全在三个方面体现: 1.原子性:提供互斥访问,串行线程(atomic,synchronized); 2.可见性:一个线程对主内存的修改可以及时地被其他线程看到,(synchronized,volatile); 3.有序性:一个线程观察其他线程中 阅读全文
posted @ 2019-09-05 20:51 吴某1 阅读(1475) 评论(0) 推荐(0) 编辑
摘要: 1、实现线程有哪几种方式 继承Thread类 实现Runnable接口,重写run()方法 实现Callable接口,重写call()方法 ,返回Future对象结果 线程池:ExecutorService 中submit(runnable/callable)返回一个Future,Future可用来 阅读全文
posted @ 2019-09-05 20:49 吴某1 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 1、static final关键字的作用 static final用来修饰成员变量和成员方法,可以理解为“全局变量” final成员变量表示常量,只能被赋值一次,赋值后不能再被改变 final类不能被继承,final类中的方法默认是final的 final方法不能被子类的方法复盖 static表示“ 阅读全文
posted @ 2019-09-05 20:12 吴某1 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 1、如何将类加载到jvm(双亲委派机制) 当AppClassLoader加载一个class时,它首先不会自己去尝试加载这个类,而是把类加载请求委派给父类加载器ExtClassLoader去完成。 当ExtClassLoader加载一个class时,它首先也不会自己去尝试加载这个类,而是把类加载请求委 阅读全文
posted @ 2019-09-05 17:13 吴某1 阅读(265) 评论(0) 推荐(0) 编辑