- 《读尽源码 第六篇》 《读尽源码 第六篇》
- 《读尽源码 第五篇》 《读尽源码 第五篇》
- 面试的时候,经常会被问到==和equals()的区别是什么?以及我们也知道重写equals()时候必须重新hashCode()。这是为什么?既然有了hashCode()方法了,JDK又为什么要提供equals()方法呢?如果在重写equals()时候没有重写hashCode(),在使用HashMap或HashSet的时候可能会出现什么情况?一文搞懂 == 、equals和hashCode==... 面试的时候,经常会被问到==和equals()的区别是什么?以及我们也知道重写equals()时候必须重新hashCode()。这是为什么?既然有了hashCode()方法了,JDK又为什么要提供equals()方法呢?如果在重写equals()时候没有重写hashCode(),在使用HashMap或HashSet的时候可能会出现什么情况?一文搞懂 == 、equals和hashCode==...
- 注解的案例介绍一、引入1、历史JDK5.0 新增 --- 注解(Annotation),也叫元数据2、什么是注解?注解其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用注解,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。使用注解时要在其前面增加@符号,并把该... 注解的案例介绍一、引入1、历史JDK5.0 新增 --- 注解(Annotation),也叫元数据2、什么是注解?注解其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用注解,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。使用注解时要在其前面增加@符号,并把该...
- Junit单元测试一、引入1、软件测试的目的软件测试的目的是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。2、测试分类2.1、黑盒测试软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测... Junit单元测试一、引入1、软件测试的目的软件测试的目的是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。2、测试分类2.1、黑盒测试软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测...
- 基于UDP的网络编程TCP客户端:Socket程序感受到的使用流 :输出流服务器端: ServerSocket --> Socket 程序感受到的使用流 :输入流(客户端和服务器端地位不平等)UDP发送方:DatagramSocket 发送:数据包 DatagramPacket接收方:DatagramSocket 接收:数据包 DatagramPacket(发送方和接收方的地址是平等的)UD... 基于UDP的网络编程TCP客户端:Socket程序感受到的使用流 :输出流服务器端: ServerSocket --> Socket 程序感受到的使用流 :输入流(客户端和服务器端地位不平等)UDP发送方:DatagramSocket 发送:数据包 DatagramPacket接收方:DatagramSocket 接收:数据包 DatagramPacket(发送方和接收方的地址是平等的)UD...
- 基于TCP的网络编程功能:模拟网站的登录,客户端录入账号密码,然后服务器端进行验证。一、功能分解1:单向通信功能:客户端发送一句话到服务器客户端:public class TestClient {//客户端 //这是一个main方法,是程序的入口: public static void main(String[] args) throws IOException { ... 基于TCP的网络编程功能:模拟网站的登录,客户端录入账号密码,然后服务器端进行验证。一、功能分解1:单向通信功能:客户端发送一句话到服务器客户端:public class TestClient {//客户端 //这是一个main方法,是程序的入口: public static void main(String[] args) throws IOException { ...
- C、Java、Python之间的小差异。变量是容器还是标签?Python的for循环为什么不一样?Python为什么不能用i++自增?C语言为什么比较快?Java的JVM是干什么的?C、Java、Python有什么区别,又有什么相似点。.................. C、Java、Python之间的小差异。变量是容器还是标签?Python的for循环为什么不一样?Python为什么不能用i++自增?C语言为什么比较快?Java的JVM是干什么的?C、Java、Python有什么区别,又有什么相似点。..................
- 集合概述在前面基础班我们已经学习过并使用过集合ArrayList<E> ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。 集合框架... 集合概述在前面基础班我们已经学习过并使用过集合ArrayList<E> ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。 集合框架...
- 实战java应用的改造,使之在docker-compose下可以按照业务需求的顺序来启动 实战java应用的改造,使之在docker-compose下可以按照业务需求的顺序来启动
- 线程通信问题应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止代码结果展示:;代码:1)商品:属性,品牌 ,名字2)线程1:生产者3)线程... 线程通信问题应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止代码结果展示:;代码:1)商品:属性,品牌 ,名字2)线程1:生产者3)线程...
- 线程安全问题出现问题:(1)出现了两个10张票或者3个10张票:;(2)出现0,-1,-2可能:;上面的代码出现问题:出现了重票,错票 --》 线程安全引起的问题原因:多个线程,在争抢资源的过程中,导致共享的资源出现问题。一个线程还没执行完,另一个线程就参与进来了,开始争抢。解决:在我的程序中加入“锁” --》 加同步 --》 同步监视器一、方法1:同步代码块【1】同步代码块演示1:pack... 线程安全问题出现问题:(1)出现了两个10张票或者3个10张票:;(2)出现0,-1,-2可能:;上面的代码出现问题:出现了重票,错票 --》 线程安全引起的问题原因:多个线程,在争抢资源的过程中,导致共享的资源出现问题。一个线程还没执行完,另一个线程就参与进来了,开始争抢。解决:在我的程序中加入“锁” --》 加同步 --》 同步监视器一、方法1:同步代码块【1】同步代码块演示1:pack...
- 线程的生命周期和常见方法一、线程的生命周期线程声明周期:线程开始 --》 线程消亡线程经历哪些阶段: ;二、线程常见方法(1)start() : 启动当前线程,表面上调用start方法,实际在调用线程里面的run方法(2)run() : 线程类 继承 Thread类 或者 实现Runnable接口的时候,都要重新实现这个run方法,run方法里面是线程要执行的内容(3)currentThre... 线程的生命周期和常见方法一、线程的生命周期线程声明周期:线程开始 --》 线程消亡线程经历哪些阶段: ;二、线程常见方法(1)start() : 启动当前线程,表面上调用start方法,实际在调用线程里面的run方法(2)run() : 线程类 继承 Thread类 或者 实现Runnable接口的时候,都要重新实现这个run方法,run方法里面是线程要执行的内容(3)currentThre...
- 创建线程的三种方式一、继承Thread类在学习多线程之前,以前的代码是单线程的吗?不是,以前也是有三个线程同时执行的。;现在我想自己制造多线程 --》 创建线程 ?线程类 --》 线程对象;package com.lanson.test01;/** * @author : Lansonli * 线程类叫:TestThread,不是说你名字中带线程单词你就具备多线程能力了(争抢资源能力) * ... 创建线程的三种方式一、继承Thread类在学习多线程之前,以前的代码是单线程的吗?不是,以前也是有三个线程同时执行的。;现在我想自己制造多线程 --》 创建线程 ?线程类 --》 线程对象;package com.lanson.test01;/** * @author : Lansonli * 线程类叫:TestThread,不是说你名字中带线程单词你就具备多线程能力了(争抢资源能力) * ...
- 多线程与程序、进程、线程之间概念详解一、程序、进程、线程1、程序(program)是为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码。 (程序是静态的)2、进程(process)是程序的一次执行过程。正在运行的一个程序,进程作为资源分配的单位,在内存中会为每个进程分配不同的内存区域。 (进程是动态的)是一个动的过程 ,进程的生命周期 : 有它自身的产生、存在和消亡的过程3、... 多线程与程序、进程、线程之间概念详解一、程序、进程、线程1、程序(program)是为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码。 (程序是静态的)2、进程(process)是程序的一次执行过程。正在运行的一个程序,进程作为资源分配的单位,在内存中会为每个进程分配不同的内存区域。 (进程是动态的)是一个动的过程 ,进程的生命周期 : 有它自身的产生、存在和消亡的过程3、...
上滑加载中
推荐直播
-
仓颉编程语言开源创新人才培养经验分享
2025/08/06 周三 19:00-20:00
张引 -华为开发者布道师-高校教师
热情而富有活力的仓颉社区为学生的学习提供了一个充满机遇和挑战的平台。本次直播探讨如何运用社区的力量帮助同学们变身为开源开发者,从而完成从学生到工程师身份的转变。
回顾中 -
“全域洞察·智控未来” ——云资源监控实战
2025/08/08 周五 15:00-16:00
星璇 华为云监控产品经理,霄图 华为云监控体验设计师,云枢 华为云可观测产品经理
本期直播深度解析全栈监控技术实践,揭秘华为云、头部企业如何通过智能监控实现业务零中断,分享高可用系统背后的“鹰眼系统”。即刻预约,解锁数字化转型的运维密码!
即将直播
热门标签