- 判定对象是否还活着Java堆中存放着几乎所有的对象实例,垃圾收集器在对堆进行回收之前,首先要确定对象是否活着,这里有几种常用的方法。引用计数算法给对象中添加一个引用计数器,每当一个地方引用它时,计数器+1,;当应用失效时,计数器-1;任何时刻计数器为0时,对象就是不可能再被使用的。应用计数算法实现简单,判定效率高,在大部分情况下是一个不错的算法。但是,Java虚拟机里并没有使用该算法,其主要... 判定对象是否还活着Java堆中存放着几乎所有的对象实例,垃圾收集器在对堆进行回收之前,首先要确定对象是否活着,这里有几种常用的方法。引用计数算法给对象中添加一个引用计数器,每当一个地方引用它时,计数器+1,;当应用失效时,计数器-1;任何时刻计数器为0时,对象就是不可能再被使用的。应用计数算法实现简单,判定效率高,在大部分情况下是一个不错的算法。但是,Java虚拟机里并没有使用该算法,其主要...
- Java数据类型转换在说明数据类型转换(下简称类型转换)之前,得先说明什么是数据,数据可不仅仅是一个值,而是包括描述数据的种类(数据类型)、值以及基于其类型基础上可进行的操作的集合。从类型A转换到类型B,这需要类型B拥有类型A的相关性质,他们之间的转换需要遵从一定规则,并不是可以任意转换的,最基本的转换思想:只有同类可转换,低级转高级可自动转换,高级转低级需要强制转换。 所谓的自动转换(也... Java数据类型转换在说明数据类型转换(下简称类型转换)之前,得先说明什么是数据,数据可不仅仅是一个值,而是包括描述数据的种类(数据类型)、值以及基于其类型基础上可进行的操作的集合。从类型A转换到类型B,这需要类型B拥有类型A的相关性质,他们之间的转换需要遵从一定规则,并不是可以任意转换的,最基本的转换思想:只有同类可转换,低级转高级可自动转换,高级转低级需要强制转换。 所谓的自动转换(也...
- 了解需求方案 1:数据库轮询方案 2:JDK 的延迟队列方案 3:时间轮算法方案 4:redis 缓存方案 5:使用消息队列 了解需求在开发中,往往会遇到一些关于延时任务的需求。例如生成订单 30 分钟未支付,则自动取消生成订单 60 秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题,这个延时任务和定时任务的区别究竟在哪里呢?一共有如下几点... 了解需求方案 1:数据库轮询方案 2:JDK 的延迟队列方案 3:时间轮算法方案 4:redis 缓存方案 5:使用消息队列 了解需求在开发中,往往会遇到一些关于延时任务的需求。例如生成订单 30 分钟未支付,则自动取消生成订单 60 秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题,这个延时任务和定时任务的区别究竟在哪里呢?一共有如下几点...
- 一·背景描述从jdk9开始引入HTTP Client 标准化,根据用户的反馈在jdk10开始更新,有了显著的改进,使用方式基本保持不变。通过CompletableFutures提供了非阻塞请求和响应式。流量控制可以在java.util.concurrent.Flow API 提供支持。在jdk9和jdk10时进行时几乎完全重写了实现,实现了完全异步,以前的http1.1实现是阻塞的,RX F... 一·背景描述从jdk9开始引入HTTP Client 标准化,根据用户的反馈在jdk10开始更新,有了显著的改进,使用方式基本保持不变。通过CompletableFutures提供了非阻塞请求和响应式。流量控制可以在java.util.concurrent.Flow API 提供支持。在jdk9和jdk10时进行时几乎完全重写了实现,实现了完全异步,以前的http1.1实现是阻塞的,RX F...
- 一、三大组件简介Channel与BufferJava NIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。通道表示打开到 IO 设备(例如:文件、套接字)的连接。若需要使用 NIO 系统,需要获取用于连接 IO 设备的通道以及用于容纳数据的缓冲区。然后操作缓冲区,对数据进行处理简而言之,通道负责传输,缓冲区负责存储常见的Channel有以下四种,其中FileChannel主... 一、三大组件简介Channel与BufferJava NIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。通道表示打开到 IO 设备(例如:文件、套接字)的连接。若需要使用 NIO 系统,需要获取用于连接 IO 设备的通道以及用于容纳数据的缓冲区。然后操作缓冲区,对数据进行处理简而言之,通道负责传输,缓冲区负责存储常见的Channel有以下四种,其中FileChannel主...
- 文章目录Lock 和 AQSLock接口AQSAQS同步器原理Lock 和 AQSLock接口Lock实现提供比使用synchronized方法和语句可以获得的更广泛的锁定操作。它们允许更灵活的结构化,可能具有完全不同的属性,并且可以支持多个相关联的对象Condition。Lock接口提供的方法操作:void lock()获取锁,如果锁被使用会一直阻塞直至获取到锁。void lockInte... 文章目录Lock 和 AQSLock接口AQSAQS同步器原理Lock 和 AQSLock接口Lock实现提供比使用synchronized方法和语句可以获得的更广泛的锁定操作。它们允许更灵活的结构化,可能具有完全不同的属性,并且可以支持多个相关联的对象Condition。Lock接口提供的方法操作:void lock()获取锁,如果锁被使用会一直阻塞直至获取到锁。void lockInte...
- Java NIO主要解决了Java IO的效率问题,解决此问题的思路之一是利用硬件和操作系统直接支持的缓冲区、虚拟内存、磁盘控制器直接读写等优化IO的手段;思路之二是提供新的编程架构使得单个线程可以控制多个IO,从而节约线程资源,提高IO性能。Java IO引入了三个主要概念,即缓冲区(Buffer)、通道(Channel)和选择器(Selector),本文主要介绍缓冲区。1. 缓冲区概念缓... Java NIO主要解决了Java IO的效率问题,解决此问题的思路之一是利用硬件和操作系统直接支持的缓冲区、虚拟内存、磁盘控制器直接读写等优化IO的手段;思路之二是提供新的编程架构使得单个线程可以控制多个IO,从而节约线程资源,提高IO性能。Java IO引入了三个主要概念,即缓冲区(Buffer)、通道(Channel)和选择器(Selector),本文主要介绍缓冲区。1. 缓冲区概念缓...
- 好久没写过java了主要也不知道写什么,光顾着向GitHub传题目了。理了下思路,并结合了《Thinking in Java》和API文档,分享了下自己对NIO的理解,当然这只是针对于文件I/O,毕竟其他内容实在太多太多了…NIO概述(文件I/O)2002年2月13日,JDK1.4发布,工程代号为Merlin(灰背隼)。JDK1.4发布了很多新的特性,其中就包含NIO。java.nio全称j... 好久没写过java了主要也不知道写什么,光顾着向GitHub传题目了。理了下思路,并结合了《Thinking in Java》和API文档,分享了下自己对NIO的理解,当然这只是针对于文件I/O,毕竟其他内容实在太多太多了…NIO概述(文件I/O)2002年2月13日,JDK1.4发布,工程代号为Merlin(灰背隼)。JDK1.4发布了很多新的特性,其中就包含NIO。java.nio全称j...
- Servlet生命周期在Java中对象的生命周期指一个对象从被创建到被销毁的整个过程。我们可以将Servlet大致划分为四个阶段1:加载和实例化,我们的默认情况下,没有自己指定值的话,Servlet在被第一次被访问的时候,会由容器创建Servlet对象。默认情况,Servlet会在第一次访问被容器创建,但是如果创建Servlet比较耗时的话,那么第一个访问的人等待的时间就比较长,用户的体验... Servlet生命周期在Java中对象的生命周期指一个对象从被创建到被销毁的整个过程。我们可以将Servlet大致划分为四个阶段1:加载和实例化,我们的默认情况下,没有自己指定值的话,Servlet在被第一次被访问的时候,会由容器创建Servlet对象。默认情况,Servlet会在第一次访问被容器创建,但是如果创建Servlet比较耗时的话,那么第一个访问的人等待的时间就比较长,用户的体验...
- @[TOC](java从入门到精通二十五(vue和element 对项目的改进) vue我们之前获取前端表单数据的时候,我们需要进行大量的操作。当前我只是进行了浅显的一些认识。我们用vue可以实现的是一种数据双向绑定的操作。我们之前实现的mvc的思想只能实现模型到视图的单向展示。不能够实现双向。也就是视图到模型是不可以的。我们可以认为这样是数据模型和视图的结合。for遍历模型数据,然后取出数... @[TOC](java从入门到精通二十五(vue和element 对项目的改进) vue我们之前获取前端表单数据的时候,我们需要进行大量的操作。当前我只是进行了浅显的一些认识。我们用vue可以实现的是一种数据双向绑定的操作。我们之前实现的mvc的思想只能实现模型到视图的单向展示。不能够实现双向。也就是视图到模型是不可以的。我们可以认为这样是数据模型和视图的结合。for遍历模型数据,然后取出数...
- @[TOC](java从入门到精通二十七(Spring框架篇章二) IOC和 DI管理第三方bean我们要用到的是控制反转和依赖注入这种理念来进行管理第三方bean。对的这是Spring里面非常典型的思想。我们回顾一下他们两个的定义。DI全程Dependency Injection,当某个java 实例需要另一个java实例时,创建被调用者的工作不是由调用者实现,而是由spring容器来完成... @[TOC](java从入门到精通二十七(Spring框架篇章二) IOC和 DI管理第三方bean我们要用到的是控制反转和依赖注入这种理念来进行管理第三方bean。对的这是Spring里面非常典型的思想。我们回顾一下他们两个的定义。DI全程Dependency Injection,当某个java 实例需要另一个java实例时,创建被调用者的工作不是由调用者实现,而是由spring容器来完成...
- 对象序列化流与反序列化流 什么是序列化与反序列化=java序列化,就是指吧java对象转换为字节序列的过程。而反序列自然就是将字节对象恢复为java对象。==这样做的意义在哪呢?对象进行序列化,会转换为字节流,这样在网络上传输,或者是进行保存为本地文件都是非常方便的。反序列很明显就是进行对象的重构。其实你可以和通信联系在一起。==网络上的文本,图片,视频,音频都是通过二进制进行传输的,我们... 对象序列化流与反序列化流 什么是序列化与反序列化=java序列化,就是指吧java对象转换为字节序列的过程。而反序列自然就是将字节对象恢复为java对象。==这样做的意义在哪呢?对象进行序列化,会转换为字节流,这样在网络上传输,或者是进行保存为本地文件都是非常方便的。反序列很明显就是进行对象的重构。其实你可以和通信联系在一起。==网络上的文本,图片,视频,音频都是通过二进制进行传输的,我们...
- [video(video-D2TVuDQe-1612360572762)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=713979305)(image-https://ss.csdn.net/p?http://i1.hdslb.com/bfs/archive/d9efb8ca26ea2cd0e9ecd50c24... [video(video-D2TVuDQe-1612360572762)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=713979305)(image-https://ss.csdn.net/p?http://i1.hdslb.com/bfs/archive/d9efb8ca26ea2cd0e9ecd50c24...
- 三:List集合List集合是单列集合的一种,它所存储的元素是可以重复的。List是直接实现Collection接口类的一种。完整的lIst接口类定义如下。public interface List<E>extends Collection<E>E是指代了泛型,泛型说明了类属性。与 set 不同,列表通常允许重复的元素。更确切地讲,列表通常允许满足 e1.equals(e2) 的元素对 e... 三:List集合List集合是单列集合的一种,它所存储的元素是可以重复的。List是直接实现Collection接口类的一种。完整的lIst接口类定义如下。public interface List<E>extends Collection<E>E是指代了泛型,泛型说明了类属性。与 set 不同,列表通常允许重复的元素。更确切地讲,列表通常允许满足 e1.equals(e2) 的元素对 e...
- @[TOC]( Java从入门到精通十六(函数式接口)) 🍍 函数式接口引入函数式接口是只含有一个抽象方法的接口。但是可以含有多个非抽象方法。package function;@FunctionalInterfacepublic interface Demo { void print();// void insert();//不可以含有多个抽象方法 static vo... @[TOC]( Java从入门到精通十六(函数式接口)) 🍍 函数式接口引入函数式接口是只含有一个抽象方法的接口。但是可以含有多个非抽象方法。package function;@FunctionalInterfacepublic interface Demo { void print();// void insert();//不可以含有多个抽象方法 static vo...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签