![](https://img-blog.csdnimg.cn/20210726143519337.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java
文章平均质量分 70
Java基础等知识
小叮当不懒
这个作者很懒,什么都没留下…
展开
-
多线程——保证线程安全
目录多线程——保证线程安全含义如何保证线程安全具体方法volatile关键字保证可见性禁止重排序synchronized关键字保证原子性防止死锁原因后果检查死锁解决方法不积跬步,无以至千里;不积小流,无以成江海。要沉下心来,诗和远方的路费真的很贵!多线程——保证线程安全含义线程安全:指在多线程对一个共享资源同时进行操作的时候,所得到的结果每次都是一样的。如何保证线程安全方法:要保证线程安全,就必须保证线程同步。保证线程的可见性,有序性和原子性。线程同步线程同步的含义和字面意义相反。同步原创 2021-09-09 10:12:22 · 8070 阅读 · 0 评论 -
创建线程的四种方式
目录创建线程的四种方式1. 继承Thread类2. 实现Runnable接口3. 实现Callable接口4. 使用线程池不积跬步,无以至千里;不积小流,无以成江海。要沉下心来,诗和远方的路费真的很贵!创建线程的四种方式1. 继承Thread类写一个线程类继承Thread类,并重写run方法创建子类对象开启线程package com.hnu;//1.继承Thread类public class Thread1 extends Thread{ @Override public voi原创 2021-09-06 18:29:06 · 81 阅读 · 0 评论 -
Java中Queue的基本操作
1、在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。Queue接口与List、Set同一级别,都是继承了Collection接口。Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获取并移出元素。它们的优点是通过返回值可以判断成功与否,add()和remove()方法在失败的时候会抛出异常。 如果要使用前端而不移出该元素,使用element()或者peek()方法。2、值得注意的是原创 2021-05-27 09:51:49 · 461 阅读 · 0 评论 -
Java的反射机制
目录Java的反射机制理论实践获取class对象的三种方式不积跬步,无以至千里;不积小流,无以成江海。要沉下心来,诗和远方的路费真的很贵!Java的反射机制理论原理:1. 类:可以知道类中的所有属性和方法。 2. 对象:可以调用任意一个方法。 ==注:==通过毛色置为红色。 3.一切皆对象,类也是对象。(重点核心) 4. .class在硬盘中是一个文件,当其运行加载到内存中时,就成为了一个对象。原创 2021-06-25 17:02:36 · 72 阅读 · 0 评论 -
序列化和反序列化
序列化与反序列化理论实践普通序列化成员对象是引用类型的序列化同一个对象序列化多次可选的自定义序列化Java序列化和Android序列化对比理论序列化:将对象保存到IO流中。反序列化:将对象从IO流中恢复。含义:序列化机制可以使对象脱离程序而存在,即将可序列化的对象转换为字节序列,保存在磁盘上。使用场景:所有的对象都是可序列化的。(即都实现了Serializable接口)。实践普通序列化序列化:创建对象输出流。运用对象输出流的writeObject方法将对象写入io流。Pers原创 2021-05-31 20:55:42 · 114 阅读 · 0 评论 -
Java中的常见线程池
目录Java中的常见线程池类型区别使用不积跬步,无以至千里;不积小流,无以成江海。要沉下心来,诗和远方的路费真的很贵!Java中的常见线程池类型newCacheThreadPoolnewFixedThreadPoolnewSingleThreadPoolnewScheduleThreadPool区别newCacheThreadPool是一个拥有缓存的线程池,将每一个线程缓存起来(缓存释放时间默认为工作线程空闲一分钟),工作线程数量是无限大。newFixedThreadPo原创 2021-07-26 21:47:29 · 219 阅读 · 0 评论